Макс дав гідну відповідь, яку я схвалюю, як тільки я закінчу введення цього альтернативного перегляду вгору.
Я не прихильник відновлення системних баз даних під час міграції оновлень, і я вважаю за краще робити міграції на місці оновлення, як я обговорював у цій тривалій відповіді на інше питання.
В основному я люблю починати "свіжим", коли роблю міграцію. Я вважаю, що граючи з міграцією системних баз даних та оновленнями через відновлення, іноді це може спричинити розчарування з відновленнями, і це може перенести потенційні гріхи.
Ви також запитували про індекси, збережені процедури, представлення даних. Ці елементи на рівні бази даних повинні містити всередині бази даних користувача. Отже, коли ви відновите базу даних X на новому сервері, всі об’єкти бази даних (таблиці, користувачі, представлення даних, програми, функції тощо) також будуть там.
У системних базах даних існують завдання, входи в систему, оповіщення, пов'язані сервери, ключі шифрування тощо.
Я хотів би розглянути ці та мігрувати на те , що мені потрібно , використовуючи різні сценарії - в останнім часом , що є DBATools.Io Powershell сценаріїв. Мені подобається використовувати їх скрипт, особливо для копіювання логін sql , тому що він обробляє користувачів, що підтверджують автентичність SQL, зберігаючи паролі та ідентифікатори безпеки однаковими, тому користувачі баз даних із цих входів працюватимуть. Вони також мають цілу команду міграції SQL Server, яка виконує свої підкоманди для копіювання елементів, які я зазвичай копіював.
Я не вірю, що Макс помиляється з цією відповіддю, звідси і голосування. Я просто мав більше успіху та більше удачі і відчував себе комфортніше переходити до нового, а не намагатися відновити через системні бази даних між версіями. Я б сказав, що я, чесно кажучи, не можу згадати востаннє, коли я робив міграцію оновлення версії, і не робив цього так замість відновлення системних баз даних.