Tengo una base de datos de producción muy grande y una base de datos de entorno de prueba muy grande en SQL Server 2008R2. Ambas bases de datos tienen una estructura de tabla similar pero diferentes usuarios / inicios de sesión / permisos / roles.
Necesito actualizar solo unas pocas tablas de la base de datos de prueba periódicamente desde la producción, aproximadamente una vez al mes.
La forma actual en que planeo hacer esto es
- Use la utilidad BCP para exportar las tablas que necesito de Producción.
- Copie el archivo de exportación bcp en el servidor de prueba
- Deshabilite índices y restricciones en todas las tablas que estoy actualizando en Prueba
- Truncar las tablas de la base de datos de prueba
- Vuelva a cargar los datos en las tablas de la base de datos de prueba con BCP
- reconstruir índices y volver a habilitar restricciones en Prueba
Todo esto parece demasiado complicado para una tarea tan pequeña. También parece que generaría mucho rehacer (en el t-log) ¿Hay una mejor manera de hacer esto?
Otra forma en que pensé hacer esto es restaurar una copia de seguridad de Producción en el entorno de prueba, pero el problema que tengo es que una copia de seguridad completa sería bastante grande y no necesito actualizar todas las tablas, solo unas pocas. -y también los usuarios y la seguridad en la base de datos de producción es diferente de la prueba. Eso sería sobrescrito por la configuración de seguridad en la base de datos de producción si restauro toda la base de datos.