it-swarm-es.tech

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

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) usando el comando " Tareas-> Exportar datos " para crear y llenar 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 apuesto a que hay una manera más fácil. ¿Algún experto en MS SQL Server tiene algún consejo?

20
ryan_s

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

Este es un script de respaldo que mantengo. Haga que funcione para un archivo y luego modifíquelo 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
44
Leon Bambrick

Quizás lo más fácil es separar/volver a colocar. 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 conectarlos haciendo clic en el icono del servidor y tareas -> adjuntar. Le pedirá el archivo MDF - asegúrese de que el nombre, etc., sea correcto.

14
user1151

En orden de facilidad

  • detener server/fcopy/attach es probablemente lo más fácil.
  • copia de seguridad/restauración: se puede hacer desconectado bastante simple y fácil
  • transferencia DTS tarea - necesita permisos de copia de archivo
  • replicación: más allá de simple a configuración

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

4
stephbu

Ya hay mejores respuestas, pero esta es una 'también corrida' porque es solo otra opción.

Por el bajo y bajo precio gratuito, puede mirar el Asistente de publicación de bases de datos de Microsoft SQL Server . Esta herramienta le permite escribir el esquema, datos o datos y esquema. Plus se puede ejecutar desde una interfaz de usuario o línea de comando <- piense en el proceso de CI.

4
MotoWilliams

Si utiliza la solución de copia de seguridad/restauración, es probable que tenga usuarios huérfanos, así que asegúrese de consultar este artículo <Microsoft> sobre cómo solucionarlos.

2
Mike L

Copia de seguridad -> Restaurar es el más simple, si no es para usar la replicación.

2
dimarzionist

Otro para verificar que es rápido y simple:

Copia BULK SQL simple

http://projects.c3o.com/files/3/plugins/entry11.aspx

2
Doug

Realice una copia de seguridad de las bases de datos utilizando 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.

1
X-Cubed

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

0
JesseG

Redgate SQL Compare y SQL Data Compare. El Paquete de comparación fue, con mucho, la mejor inversión que una empresa para la que trabajé. Mover contenido de capacitación electrónica fue muy fácil.

0
Kevin Sheffield
0
Yordan Georgiev