servidor script restaurar otro mover migrar migracion exportar disco datos copiar sql-server database

script - ¿Cuál es la mejor manera de copiar bases de datos completas en MS SQL Server?



mover base de datos sql server a otro disco (11)

Backup -> Restore es el más simple, si no es para usar la replicación.

Necesito copiar unas 40 bases de datos de un servidor a otro. Las nuevas bases de datos deben tener nuevos nombres, pero todas las mismas tablas, datos e índices que las bases de datos originales. Hasta ahora he estado:

1) crear cada base de datos de destino
2) utilizando el comando " Tareas-> Exportar datos " para crear y completar tablas para cada base de datos individualmente
3) reconstruir todos los índices para cada base de datos con un script SQL

Solo tres pasos por base de datos, pero apostaría que hay una manera más fácil. ¿Algún experto de MS SQL Server tiene algún consejo?


Dado que está realizando esto en múltiples bases de datos, quiere una solución con guiones simple, no una solución de apuntar y hacer clic.

Este es un script de respaldo que guardo. Haz que funcione para un archivo y luego modifícalo para muchos.

(on source server...) BACKUP DATABASE Northwind TO DISK = ''c:/Northwind.bak'' (target server...) RESTORE FILELISTONLY FROM DISK = ''c:/Northwind.bak'' (look at the device names... and determine where you want the mdf and ldf files to go on this target server) RESTORE DATABASE TestDB FROM DISK = ''c:/Northwind.bak'' WITH MOVE ''Northwind'' TO ''c:/test/testdb.mdf'', MOVE ''Northwind_log'' TO ''c:/test/testdb.ldf'' GO


En orden de facilidad

  • detener el servidor / fcopy / attach es probablemente el más fácil.
  • copia de seguridad / restauración: se puede hacer desconectado de manera simple y fácil
  • transferir tarea DTS - necesita permisos de copia de archivo
  • replicación: más alejado de lo simple a la configuración

Cosas para pensar sobre permisos, usuarios y grupos en el servidor de destino esp. si estás transfiriendo o restaurando.


Haga una copia de seguridad de las bases de datos con la herramienta de copia de seguridad SQL estándar en Enterprise Manager, luego, cuando restaure en el segundo servidor, puede especificar el nombre de la nueva base de datos.

Esta es la mejor manera de mantener el esquema en su totalidad.


Redgate SQL Compare y comparación de datos SQL. El paquete de comparación fue de lejos la mejor inversión para la que trabajé alguna vez. Mover contenido de e-training fue muy fácil.


Si usa la solución de Respaldo / Restauración, es probable que tenga usuarios huérfanos, así que asegúrese de consultar este artículo <microsoft> sobre cómo solucionarlos.


Tal vez lo más fácil es separar / volver a unir. Haga clic derecho en el administrador del servidor en la base de datos, tareas -> separar. Luego copie los archivos MDF / LDF al nuevo servidor y luego vuelva a conectar haciendo clic en el ícono del servidor y tareas -> adjuntar. Le pedirá el archivo MDF; asegúrese de que el nombre, etc. sea exacto.


utilice copias de seguridad para restaurar las bases de datos al nuevo servidor con los nuevos nombres.


Ya hay mejores respuestas, pero este es un ''también funcionó'' porque es solo otra opción.

Por el bajo precio bajo de forma gratuita, puede consultar el Asistente de publicación de la base de datos de Microsoft SQL Server . Esta herramienta le permite programar el esquema, los datos o los datos y el esquema. Además, se puede ejecutar desde una interfaz de usuario o línea de comando <- pensar en el proceso de CI.