Max dio una respuesta decente que votaré una vez que termine de escribir esta vista alternativa.
No soy un fanático de restaurar las bases de datos del sistema cuando realizo una migración de actualización y prefiero realizar migraciones en lugar de las actualizaciones en el lugar, como lo mencioné en esta larga respuesta a otra pregunta.
Básicamente me gusta comenzar "fresco" cuando hago una migración. Encuentro que jugar con las migraciones y actualizaciones de la base de datos del sistema a través de la restauración a veces causa frustraciones con las restauraciones y puede llevar a posibles pecados.
También preguntaste sobre índices, procedimientos almacenados, vistas. Esos elementos en el nivel de la base de datos deben vivir dentro de una base de datos de usuario. Por lo tanto, cuando restaure la base de datos X al nuevo servidor, todos los objetos de la base de datos (tablas, usuarios, vistas, procesos, funciones, etc.) también estarán allí.
Lo que existe en las bases de datos del sistema son trabajos, inicios de sesión, alertas, servidores vinculados, claves de cifrado, etc. Elementos de nivel de instancia.
Me gusta revisarlos y migrar sobre lo que necesito usando varios scripts, últimamente son los scripts DBATools.Io powershell. Me gusta usar su script para copiar inicios de sesión SQL especialmente, porque maneja a los usuarios autenticados de SQL manteniendo sus contraseñas e identificadores de seguridad iguales para que los usuarios de la base de datos de esos inicios de sesión funcionen. También tienen un comando completo de migración de SQL Server que ejecuta sus subcomandos para copiar los elementos que normalmente copiaría.
No creo que Max esté equivocado con esa respuesta, de ahí el voto a favor. Acabo de tener más éxito y más suerte y me siento más cómodo migrando a una nueva en lugar de tratar de restaurar las bases de datos del sistema entre versiones. Diría que honestamente no puedo recordar la última vez que hice una migración de actualización de versión y no lo hice de esta manera en lugar de restaurar las bases de datos del sistema.