En esta página, se describe cómo migrar tus bases de datos de SQL Server a una instancia de Cloud SQL para SQL Server con Database Migration Service.
El proceso de migración incluye las siguientes tareas:
Exporta la copia de seguridad completa de la base de datos y los archivos de registro de transacciones desde la instancia de SQL Server de origen.
También puedes usar la copia de seguridad diferencial opcional de la base de datos en el proceso de migración.
Subir tus archivos de copia de seguridad a un bucket de Cloud Storage.
Crea la instancia de destino de Cloud SQL para SQL Server.
Crear y ejecutar trabajos de migración en Database Migration Service.
Supervisar el progreso de la tarea de migración con las funciones de visibilidad de Database Migration Service
Promocionar el trabajo de migración después de que los datos se migran por completo.
Costos
Para las migraciones homogéneas a Cloud SQL, Database Migration Service se ofrece sin cargo adicional. Sin embargo, los precios de Cloud SQL y Cloud Storage se aplican a los cargos de red, así como a las entidades de Cloud SQL y Cloud Storage creadas con fines de migración.
En este documento, usarás los siguientes componentes facturables de Google Cloud:
- Cloud Storage
- Cloud SQL
Para generar una estimación de costos en función del uso previsto, usa la calculadora de precios.
Antes de comenzar
- Verifica si esta ruta de migración puede admitir completamente tu situación. Consulta Limitaciones conocidas de SQL Server.
- Ten en cuenta en qué región deseas crear la base de datos de destino. Database Migration Service es un producto completamente regional, lo que significa que todas las entidades relacionadas con tu migración (perfiles de conexión de origen y destino, trabajos de migración, bases de datos de destino y buckets de almacenamiento) se deben guardar en una sola región.
- En la consola de Google Cloud , en la página del selector de proyectos, selecciona o crea un proyecto de Google Cloud .
- Habilita las APIs de Database Migration Service, Compute Engine, Cloud Storage y Administrador de Cloud SQL.
Roles obligatorios
Para obtener los permisos que necesitas para realizar migraciones homogéneas de SQL Server con Database Migration Service, pídele a tu administrador que otorgue los roles de IAM necesarios en tu proyecto para las siguientes cuentas involucradas en el proceso de migración.
- Cuenta de usuario que realiza la migración:
-
Administrador de Database Migration (
roles/datamigration.admin
) -
Administrador de almacenamiento (
roles/storage.admin
) -
Editor de Cloud SQL (
roles/cloudsql.editor
)
-
Administrador de Database Migration (
- Cuenta de servicio de Database Migration Service:
-
Administrador de Database Migration (
roles/datamigration.admin
) -
Administrador de almacenamiento (
roles/storage.admin
) -
Editor de Cloud SQL (
roles/cloudsql.editor
) -
Usuario de Cloud SQL Studio (
roles/cloudsql.studioUser
)
-
Administrador de Database Migration (
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.
Estos roles predefinidos contienen los permisos necesarios para realizar migraciones homogéneas de SQL Server con Database Migration Service. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para realizar migraciones homogéneas de SQL Server con Database Migration Service:
- Cuenta de usuario que realiza la migración:
datamigration.*
resourcemanager.projects.get
resourcemanager.projects.list
cloudsql.operations.get
cloudsql.instances.create
cloudsql.instances.get
cloudsql.instances.list
cloudsql.instances.import
cloudsql.databases.get
cloudsql.databases.list
cloudsql.databases.delete
compute.machineTypes.list
compute.machineTypes.get
compute.projects.get
storage.buckets.create
storage.buckets.list
- Cuenta de servicio de Database Migration Service:
datamigration.*
resourcemanager.projects.get
resourcemanager.projects.list
cloudsql.instances.create
cloudsql.instances.get
cloudsql.instances.list
cloudsql.instances.executeSql
storage.objects.create
storage.objects.list
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Prepara los datos de origen
Para preparar tus datos de origen para la migración, sigue estos pasos:
Considera tu estrategia de copia de seguridad para el proceso de migración. Database Migration Service admite el uso de una copia de seguridad diferencial y los archivos de registro de transacciones para migrar los datos que aparecen en tu base de datos después de que creas la copia de seguridad completa.
Realiza una copia de seguridad completa de tu base de datos de SQL Server de origen. Asegúrate de usar el patrón de nombres correcto.
Prepara un bucket de Cloud Storage y sube tus archivos de copia de seguridad a él. Asegúrate de configurar la estructura de directorio necesaria para cada tipo de archivo de copia de seguridad que quieras usar.
Crea un perfil de conexión fuente para el bucket de Cloud Storage.
Prepara tu instancia de destino de Cloud SQL para SQL Server
Para configurar tu instancia de Cloud SQL de destino, sigue estos pasos:
Crea y configura tu instancia de destino de Cloud SQL para SQL Server. Asegúrate de usar suficientes recursos de procesamiento y memoria para cubrir tus necesidades de migración y asigna el rol de administrador de almacenamiento (
roles/storage.admin
) a la cuenta de servicio de la instancia.Crea un perfil de conexión de destino para tu instancia de Cloud SQL.
Crea y ejecuta el trabajo de migración
Para configurar y ejecutar la migración, sigue estos pasos:
Crea y ejecuta el trabajo de migración.
Cuando inicias el trabajo de migración, las bases de datos de Cloud SQL para SQL Server de destino se ponen en modo de recuperación, en el que Database Migration Service las administra por completo. Puedes promocionar tu instancia de destino cuando los datos se hayan migrado por completo. Después de que se promocione tu instancia de destino, todas las bases de datos de esa instancia estarán completamente operativas. También obtienes acceso de escritura completo a esas bases de datos.
Puedes supervisar el progreso de la migración, así como el estado de la instancia de destino con las funciones de visibilidad de Database Migration Service. Consulta Métricas de los trabajos de migración.
Sigue subiendo nuevos archivos de copia de seguridad del registro de transacciones al bucket de Cloud Storage.
Para cubrir los datos que aparecen en tu base de datos de origen después de realizar la exportación de la copia de seguridad completa, exporta los archivos de copia de seguridad del registro de transacciones y súbelos al bucket de almacenamiento. Database Migration Service detecta automáticamente los archivos nuevos, lee su contenido y envía los datos a tu instancia de destino. Consulta Cómo automatizar las exportaciones de registros de transacciones.
Finaliza la migración
Cuando decidas cambiar tu aplicación a la nueva instancia de Cloud SQL para SQL Server, sigue estos pasos para finalizar la migración:
- Detén todas las operaciones de escritura en tus bases de datos de origen. Puedes cambiarlos al modo de solo lectura para conservar la funcionalidad operativa.
- Crea una copia de seguridad del último registro de transacciones, sube el archivo a tu bucket de almacenamiento y detén la fase de carga incremental en Database Migration Service.
Para lograr este resultado, puedes realizar una de las siguientes acciones:
- Detén las cargas automáticas de archivos de copia de seguridad o sube el último archivo de registro de transacciones. Supervisa el tamaño de las copias de seguridad del registro de transacciones sin procesar para determinar cuándo Database Migration Service termina de procesar ese archivo.
- De manera opcional, puedes subir un archivo de registro de transacciones cuyo nombre finalice en el sufijo
.trn.final
. Database Migration Service detiene las cargas contínuas cuando detecta un archivo de copia de seguridad cuyo nombre coincide con la convención de sufijo.trn.final
.Cuando Database Migration Service termina de procesar ese archivo, el estado del trabajo de migración cambia a Listo para promocionar.
- Asciende el trabajo de migración.
- (Opcional) Verifica los datos de migración para completarlos.