none
upgrade sql server 2012 to 2016

תשובות

  • אהלן וברוך הבא לפרום,

    אני לא בטוח שאני מבין למה הכוונה side-by-side
    אם אתה פשוט מדבר על שכפול תוכן מסד הנתונים הרי שמדובר על מקרה פשוט ייחסית אבל אם אתה צריך להריץ את אותם Logins הרי שזה כבר סיפור אחר... אתה כן יכול להריץ Logins זהים מכל הבחינות אבל אלו לא אותם אלמנטים. אתה יכול ליצור Logins עם אותו ID כמו שהיה בשרת הישן. דבר זהה צריךלוודא לגבי USERS ברמת מסד הנתונים.

    זה שאלה מאוד מורכבת והתשובה כמו תמיד תלויה במקרה שלך וכל מקרה לגופו :-)
    מצטער אבל רוב התשובות בשרתי SQL הן כאלה..

    הבלוג הבא יכול לעזור לך בנושא של העתקת INSTANCE שלם משרת ישן לשרת החדש. זה בלוג שכתבתי לפני מליון שנים לשימוש פנימי אבל יש שם את כל הבסיס של מה שאתה צריך במקרה זה: 

    http://ariely.info/Blog/tabid/83/EntryId/93/COPY-SQL-instance-to-a-new-Instance.aspx
    שים לב לנושא של Orphaned users. בעקרון אלו משתמשים עם אותו שם אבל ID שונה וזה אומר שהלו משתמשים שונים. בקלות ניתן לתקן את הדבר כפי שמוסבר בבלוג. כדאי לחפש עוד מידע בנושא.

    אם כל מה שאתה צריך זה להעתיק את מסד הנתונים בלבד משרת אחד לשרת אחר אז אני יכול להגיד בקלות מה הדרך הכי נפוצה והכי פשוטה

    בדרך כלל השימוש בגיבוי ושחזור היא הדרך הטובה ביותר ליצור עותק של מסד הנתונים

    את השחזור אפשר לבצע בגרסה יותר מתקדמת של השרת.

    בשלב הבא אחרי ששחזרנו את מסד הנתונים אפשר לשנות את ה database compatibility level ולבחור את הגרסה החדשה

    אתה יכול לקרוא יותר על נושא ה database compatibility level בקישור הבא:
    https://msdn.microsoft.com/en-us/library/bb510680.aspx

    חשוב ביותר לזכור!

    שינוי database compatibility level יכול להשפיע על מיטוב הריצה של השאילתה. בדרך כלל השאילתות ירוצו מהר יותר בשל השיפורים בגרסה החדשה יותר, אבל בהחלט ישנם מקרים רבים בהם המצב הפוך!

    בכל מקרה כל פעולה חובה לבצע תחילה בסביבות פיתוח ובדיקה ולא ישירות בשרת החי!

    הערה: אני בדרך כלל הייתי בוחר בהעתקת מסד הנתונים, ולא בהעתקת כל הINSTANCE, ברוב המקרים (צריך להיות מקרה מאוד קיצוני שאני באחר בזמן שדרוג גרסה להעתיק את כל המסדי הנתונים והINSTANCE בצורה אוטומטית). שידרוג שרת הוא סיפור לא קטן שצריך להעשות ברמת מסד הנתונים והאפליקציות (כאמור לא מדובר רק בהעתקת INSTANCE זהה אלא שינוי שיכול להשפיע על אופן ריצה השאילתות מאחורי הלקעים גם ו\על האפליקציה).

    הערה: מאותה סיבה אני לא הייתי ממליץ לבצע שדרוג כזה במכונה אחת אלא ממכונה אחת למכונה שנייה מה שגם יבטיח המשך עבודה על מכונה ראשונה אם יש תקלה כלשהיא. למעשה הייתי שמלב עבודה עם רפליקציה מהשרת הישן לשרת החדש ו/או הפוך בשמן ההעתקה אםהייתי רוצה לשמור על המערכת באוויר כל הזמן (כמובן שזה הופ את התהליך ליותר מורכב)


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]


    • נערך על-ידי pituachMVP, Editor יום רביעי 01 מרץ 2017 14:22
    • סומן כתשובה על-ידי shiraov יום חמישי 02 מרץ 2017 05:41
    יום רביעי 01 מרץ 2017 14:18
    מנחה דיון

כל התגובות

  • אהלן וברוך הבא לפרום,

    אני לא בטוח שאני מבין למה הכוונה side-by-side
    אם אתה פשוט מדבר על שכפול תוכן מסד הנתונים הרי שמדובר על מקרה פשוט ייחסית אבל אם אתה צריך להריץ את אותם Logins הרי שזה כבר סיפור אחר... אתה כן יכול להריץ Logins זהים מכל הבחינות אבל אלו לא אותם אלמנטים. אתה יכול ליצור Logins עם אותו ID כמו שהיה בשרת הישן. דבר זהה צריךלוודא לגבי USERS ברמת מסד הנתונים.

    זה שאלה מאוד מורכבת והתשובה כמו תמיד תלויה במקרה שלך וכל מקרה לגופו :-)
    מצטער אבל רוב התשובות בשרתי SQL הן כאלה..

    הבלוג הבא יכול לעזור לך בנושא של העתקת INSTANCE שלם משרת ישן לשרת החדש. זה בלוג שכתבתי לפני מליון שנים לשימוש פנימי אבל יש שם את כל הבסיס של מה שאתה צריך במקרה זה: 

    http://ariely.info/Blog/tabid/83/EntryId/93/COPY-SQL-instance-to-a-new-Instance.aspx
    שים לב לנושא של Orphaned users. בעקרון אלו משתמשים עם אותו שם אבל ID שונה וזה אומר שהלו משתמשים שונים. בקלות ניתן לתקן את הדבר כפי שמוסבר בבלוג. כדאי לחפש עוד מידע בנושא.

    אם כל מה שאתה צריך זה להעתיק את מסד הנתונים בלבד משרת אחד לשרת אחר אז אני יכול להגיד בקלות מה הדרך הכי נפוצה והכי פשוטה

    בדרך כלל השימוש בגיבוי ושחזור היא הדרך הטובה ביותר ליצור עותק של מסד הנתונים

    את השחזור אפשר לבצע בגרסה יותר מתקדמת של השרת.

    בשלב הבא אחרי ששחזרנו את מסד הנתונים אפשר לשנות את ה database compatibility level ולבחור את הגרסה החדשה

    אתה יכול לקרוא יותר על נושא ה database compatibility level בקישור הבא:
    https://msdn.microsoft.com/en-us/library/bb510680.aspx

    חשוב ביותר לזכור!

    שינוי database compatibility level יכול להשפיע על מיטוב הריצה של השאילתה. בדרך כלל השאילתות ירוצו מהר יותר בשל השיפורים בגרסה החדשה יותר, אבל בהחלט ישנם מקרים רבים בהם המצב הפוך!

    בכל מקרה כל פעולה חובה לבצע תחילה בסביבות פיתוח ובדיקה ולא ישירות בשרת החי!

    הערה: אני בדרך כלל הייתי בוחר בהעתקת מסד הנתונים, ולא בהעתקת כל הINSTANCE, ברוב המקרים (צריך להיות מקרה מאוד קיצוני שאני באחר בזמן שדרוג גרסה להעתיק את כל המסדי הנתונים והINSTANCE בצורה אוטומטית). שידרוג שרת הוא סיפור לא קטן שצריך להעשות ברמת מסד הנתונים והאפליקציות (כאמור לא מדובר רק בהעתקת INSTANCE זהה אלא שינוי שיכול להשפיע על אופן ריצה השאילתות מאחורי הלקעים גם ו\על האפליקציה).

    הערה: מאותה סיבה אני לא הייתי ממליץ לבצע שדרוג כזה במכונה אחת אלא ממכונה אחת למכונה שנייה מה שגם יבטיח המשך עבודה על מכונה ראשונה אם יש תקלה כלשהיא. למעשה הייתי שמלב עבודה עם רפליקציה מהשרת הישן לשרת החדש ו/או הפוך בשמן ההעתקה אםהייתי רוצה לשמור על המערכת באוויר כל הזמן (כמובן שזה הופ את התהליך ליותר מורכב)


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]


    • נערך על-ידי pituachMVP, Editor יום רביעי 01 מרץ 2017 14:22
    • סומן כתשובה על-ידי shiraov יום חמישי 02 מרץ 2017 05:41
    יום רביעי 01 מרץ 2017 14:18
    מנחה דיון
  • תודה רבה

    עזר מאוד.

    אני משדרגת שרת כמו שכתבת לשרת חדש, ע"י שחזור של מסדי נתונים והעתקת כל שאר הרכיבים ( לוגין, Linkserver, גובים ) וכו'

    אני אשתמש ב sp_help_revlogin בשביל להעתיק לוגין.

    רק ראיתי שיש אפשרות לעשות את אותם פעולות בעזרת dbatools שזה פקודותpowershell

    רציתי לדעת אם מומלץ?

    יום חמישי 02 מרץ 2017 05:48
  • היי,

    אני לא יודע אם זה שאלה של מה מומלץ. לפעמים ישנם כמה דרכים להגיע לאותה מטרה והבחירה צריכה להעשות לפי היעדים בדרך ולפעמים ממש אין ייתרון לשיטה אחת על אחרת ושפוט צריך לבחור. אני רק יכול להגיד שאישית אני לא הייתי בוחר בכלי הזה. הבחירה שלי נובעת מהיכרות מעמיקה של אפשרויות אחרות תוך דגש על הרצת שאילתות ישירות. אני ממש רואה סיבה לצאת מהסביבה "הטיבעית" של הרצת שאילתות ישירות לסביבה חיצונית כמו PowerShell אשר מאחורי הקלעים בעצם מריצה לנו את אותן השאילתות, אבל אחרים אולי יבחרו בכלי כזה או אחר, מכיון שזה מה שהם מכירים או מכיוון שהוא נותן מענה כולל או מהיר יותר או פשוט נוח יותר.

    הכלי ניראה במבט ראשוני (לא בדקתי לעומק) ככלי מאוד נוח. מצד שני כמו שכתבתי אני מעדיף להישאר בסביבה הטיבעית. הכלי מאפשר מהירות בביצוע הפעולות (כמו כל כלי אוטומטי), אבל יחייב לאחר הפעולה לבצע ווידוא שהכל תקין. זה בהחלט פתרון שאני לא פוסל :-)


    signature   Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]    [Linkedin]

    יום חמישי 02 מרץ 2017 09:45
    מנחה דיון