Restaurar una copia de seguridad a una versión anterior de SQL Server

29

Al intentar restaurar una copia de seguridad en una base de datos SQL Server Express 2008 recibí el siguiente error:

Restore failed for Server '...\SQLEXPRESS'.  (Microsoft.SqlServer.SmoExtended)
System.Data.SqlClient.SqlError: The database was backed up on a server running version
10.50.1600. 
That version is incompatible with this server, which is running version 10.00.2531. 
Either restore the database on a server that supports the backup, or use a backup 
that is compatible with this server. (Microsoft.SqlServer.Smo)

¿Hay alguna manera de obtener una copia de seguridad que sea compatible con la versión anterior (en mi caso 10.00.2531) de la versión más nueva (en mi caso 10.50.1600) de SQL Server Express?

movimiento rápido del ojo
fuente

Respuestas:

19

Debería usar los asistentes de Importar / Exportar en SSMS para migrar todo

No hay ninguna "rebaja" posible copia de seguridad utilizando / restaurar o de separación / adjuntar

gbn
fuente
8

Puede usar el asistente Importar / Exportar para mover datos entre bases de datos.

Haga clic derecho en la base de datos que desea exportar, elija "Tareas", luego "Exportar datos". El asistente lo guiará a través del proceso.

Tienes razón, sin embargo. No podrá realizar una copia de seguridad / restauración moviéndose de SQL Server 2008 R2 a SQL Server 2008 Express.

Ricardo
fuente
6

La única forma es crear una nueva base de datos en la versión 10.00.2531 e importar los datos desde 10.50.1600.

No puede restaurar a una versión anterior.

SQLRockstar
fuente
6

La copia de seguridad de SQL Server no admite compatibilidad con versiones anteriores

Pasos para obtener DB en versiones anteriores:

  • Para el esquema: haga clic derecho en su base de datos -> Tareas -> generar scripts -> siguiente -> siguiente -> haga clic en el botón avanzado -> cambie la opción "tipo de datos a script" a "esquema" - -> ok -> siguiente -> siguiente

  • Para datos: haga clic con el botón derecho en su base de datos -> Tareas -> generar scripts -> siguiente -> siguiente -> haga clic en el botón avanzado -> cambie la opción "tipo de datos a script" a "datos" - -> ok -> siguiente -> siguiente

dsingh
fuente
Un problema con este método es que las grandes bases de datos (muchas tablas y grandes datos) ejecutan scripts para restaurar requieren mucho tiempo. pero es práctico y fácil
Iman
2

haga clic derecho en su base de datos -> Tareas -> generar scripts -> siguiente -> siguiente -> haga clic en el botón avanzado -> cambie la opción "tipo de datos a script" a "esquema y datos" - > ok -> next -> next, así que ahora tienes un script que crea una base de datos y su tabla y llena los datos en ella :);)

Sarah
fuente
2
Dependiendo de la cantidad de datos, ese script podría ser enorme ...
Thomas Rushton
1
@ThomasRushton Ese script, por definición, será más grande que la base de datos en sí, ¡probablemente al menos el doble, si no es que peor! Espero que no sea una base de datos de 50 GB ...
ErikE
Esta es una respuesta duplicada
Burgi
¡Esta no es una respuesta duplicada, es una gran respuesta en el tipo de datos que es "esquema Y datos"! ;-) que es lo que necesitaba!
juFo
1
@Burgi, esta respuesta es más antigua que la de dsingh. Simplemente copió las de Sarah y agregó 2 opciones, una para el esquema y la otra para los datos. El suyo es el duplicado.
basher