restaurar migrar migracion datos copiar sql-server-2008-express sql-server-2012

migrar - ¿Cómo puedo restaurar un archivo de copia de seguridad de la base de datos(.bak) de SQL Server 2012 en SQL Server 2008 Express?



restaurar base de datos sql server 2017 en 2014 (3)

Una base de datos que originalmente era de SQL Server 2008, se restauró en SQL Server 2012. Se realizó una copia de seguridad de SQL Server 2012 y estoy intentando restaurarla en mi SQL Server 2008 Express local. Sin embargo, aparece un error ''La conversión especificada no es válida'' (SQLManagerUI).

Generé una secuencia de comandos SQL a partir de 2012 y la configuré para que se genere de manera compatible con SQL Server 2008. Sin embargo, es un archivo grande de SQL, alrededor de 700 MB.

Recuerdo antes que había intentado ejecutar un script de ese tamaño antes en mi SQLExpress local y también obtuve un error.

¿Hay alguna manera de obtener una base de datos "grande" de SQL Server 2012 en SQL Server 2008 Express?


Gracias a Marc y Aaron por proporcionar las respuestas.

La respuesta rápida es no, no es posible restaurar un archivo de copia de seguridad de una versión superior a una versión inferior de SQL Server.

Una solución alternativa sería generar los scripts para crear la base de datos.

Puede dirigir la generación de scripts a una versión inferior.

Por favor, vea los comentarios de arriba para más información.

Campo de golf:

¿Por qué una base de datos de SQL Server de una versión superior no se puede restaurar en una versión inferior de SQL Server?

Crear base de datos en SQL Server 2012, Script y uso en 2008?


Un par de cosas para agregar que podrían ser útiles para la gente

Cuando se realizan secuencias de comandos de grandes bases de datos utilizando el asistente de secuencias de comandos en SSMS, es muy importante verificar el orden de ejecución y estar dispuesto a reorganizarlo manualmente. Las versiones anteriores de SSMS tenían este problema porque (probablemente) dependían de sp_depends que tiene un bug .

Lo que he encontrado realmente útil en estos casos son herramientas como ApexSQL Diff que puede usar para leer copias de seguridad de bases de datos y generar scripts que están en el orden de ejecución correcto.

Restauración de copia de seguridad de la base de datos de SQL Server en una versión inferior

Una cosa que ninguno de los métodos detectará es lo que Aaron mencionó sobre el uso de funciones específicas de la versión superior.


Una opción mejor que usar el asistente de scripts SSMS es usar una herramienta similar disponible en Codeplex llamada Asistente de migración de base de datos SQL: http://sqlazuremw.codeplex.com/releases/view/32334 . Desea que la última versión v4.x funcione con SQL Server 2012.

La herramienta originalmente fue diseñada para migrar bases de datos entre SQL Server y Azure. Sin embargo, la herramienta funciona tan bien como entre SQL Server y SQL Server. El truco consiste en establecer SQL Server en lugar de Azure como objetivo en las opciones avanzadas.

La razón por la que esta es una mejor opción que el asistente de creación de secuencias de comandos SSMS es que utiliza BCP para la transferencia de datos en lugar de TSQL, por lo que es mucho más eficiente.