Copiando la base de datos SQL Server de 500 GB de la producción a la instancia de desarrollo

12

Necesitamos copiar una base de datos de 500 GB de nuestro servidor de PRODUCCIÓN a un servidor DEV. Solo tenemos una ventana de 5 horas.

¿Cuál sería la forma más rápida de lograr esto?


fuente
77
1. ¿Qué quieres decir con "una ventana de 5 horas"? La producción se reducirá durante 5 horas? 2. ¿Necesita la última versión absoluta de la base de datos de producción, o será suficiente una copia de seguridad reciente? 3. ¿En qué modo de recuperación está su base de datos de producción?
Nick Chammas el

Respuestas:

15

Hay dos opciones que puede hacer que no causarán ningún tiempo de inactividad en su entorno de producción:

1) Si solo desea obtener la estructura de la base de datos en sí (no necesita los datos), simplemente puede crear un script de la base de datos de producción. Luego, simplemente ejecute eso en su servidor de desarrollo para crear la base de datos.

2) Si necesita la base de datos y los datos, simplemente tome la última copia de seguridad de esa base de datos y restaurela en su servidor de desarrollo. Encontrará que este es el método más común utilizado para mantener los servidores de desarrollo adaptados a los datos de producción.


fuente
9

Si usted tiene

  • compresión de respaldo activada?
  • Una red rápida de servidor a servidor (el punto de entrada es de 1 GB)

... luego solo cópielo, restaure. Esto se puede programar en powershell, perl, cmd.exe, etc.

Cuando dices "ventana", supongo que te refieres a una ventana de 5 horas en producción. No puede ser tan crítico para cargar el desarrollo.

gbn
fuente
5

Copie al disco duro conectado localmente.

¿Por qué solo una ventana limitada? No copie: cargue la copia de seguridad en el desarrollador.

TomTom
fuente
Convenido. No es necesario desconectar (lo que requiere un tiempo de inactividad), realmente, cuando la restauración de una copia de seguridad será suficiente.
p.campbell
2
Secundaré la copia de una copia de seguridad. No es necesario desmontar su base de datos de producción para copiarla en cualquier lugar. Si necesita un punto específico en el tiempo, haga una copia de seguridad copy_only (SQL 2005+) o copie también algunas copias de seguridad de registro.
Ben Thul
2

Tal vez mi respuesta no se ajuste a su caso de uso, pero, ¿alguna vez consideró configurar, en su servidor de desarrollo, una base de datos en espera mediante el uso de una técnica como el envío de registros ... para que pueda restaurar su producto sobre su desarrollo anterior y mantenga esta copia sincronizada con su producto ...

Espero que esto ayude

Darkwookiee
fuente
0

Crea un archivo de secuencia de respaldo. Digamos que el tamaño total de su copia de seguridad es de 500 GB; puede dividirlo según sus necesidades, crear una copia de seguridad de 10 secuencias que consta de 10 archivos de copia de seguridad, cada uno de 50 GB de tamaño, y luego intentar restaurar o mover los archivos de copia de seguridad uno por uno. Reducirá el tráfico de red y restaurará el tiempo.

Subir Sankar Das
fuente
3
Hola Subir y bienvenido a DBA.SE. He editado su respuesta para mejorar su claridad y eliminar la firma en la parte inferior según nuestras pautas . Gracias por su respuesta.
Nick Chammas
No veo cómo dividir el archivo en 10 archivos individuales hará alguna diferencia en el tiempo requerido para transportar esos archivos a través de la red.
Max Vernon