¿Cómo se mueve una base de datos de SQL Server 7 a SQL Server 2012?

8

Me gustaría mover una base de datos de SQL Server 7.0 a SQL Server 2012. No son compatibles para una copia de seguridad y restauración. ¿Hay alguna forma de exportar desde SQL Server 7.0 e importarlo a 2012? Solo necesito las tablas, sin vistas ni procedimientos almacenados.

xpda
fuente
1
¿El comando de desconexión / conexión no funciona con el ajuste del nivel de compatibilidad después de eso?
msi77

Respuestas:

13

Solución 1

Copie los datos usando un proceso ETL. Esto supone que tiene una instancia de SQL Server 7 en funcionamiento con la base de datos accesible. Tiene varias herramientas a su disposición, pero el enfoque más simple que pude ver es:

  1. Cree un script para todos los objetos de SQL Server 7 y créelos en SQL Server 2012. Puede que tenga que ajustar el script si hay alguna sintaxis específica de SQL Server 7.
  2. Use un proceso ETL para copiar datos. Algunas alternativas:

    • BCP : use BCP para volcar cada tabla en un archivo RAW o de texto, luego use BCP para cargarlos en los objetos de SQL Server 2012.
    • Asistente de importación / exportación en SQL Server 2012 : use el asistente de importación / exportación para crear tareas de transferencia de datos.
    • SSIS : esto es esencialmente lo mismo que el Asistente de importación / exportación, pero con más funcionalidad.

En general, este podría ser un proceso tedioso, pero le permite copiar datos directamente de una base de datos a la otra. Si sigue la ruta BCP, necesitará algo de almacenamiento para los archivos de volcado, pero esto no tiene que ser el almacenamiento de la base de datos.

Solución 2

Actualice la base de datos utilizando un paso intermedio de actualización a SQL Server 2005. Esto supone que tiene acceso a los medios de SQL Server 2005 y a un servidor para soportarlo. SQL Server 7 no se puede actualizar a SQL Server 2008 ya que esa ruta de actualización no es compatible, pero si puede restaurar la base de datos a SQL Server 2005, puede hacer una copia de seguridad sucesiva de la versión de SQL Server 2005 y restaurarla a SQL Server 2012.

Mike Fal
fuente
3
Recomiendo encarecidamente la Solución 2 sobre la Solución 1.
mrdenny
1
Eso es lo que hice, excepto sql 7> 2000> 2008> 2012 porque no tenía 2005 disponible.
xpda
1
Estoy de acuerdo: la opción 2 es definitivamente la mejor opción, y mira esta respuesta para ver algunos pros y contras en lugar de migrar, especialmente cierto con algo como esto. ¡Y felicidades por bajar de 7.0! ;-)
Mike Walsh