Migra desde una instancia de Cloud SQL para SQL Server

En esta página, se describe cómo migrar tus bases de datos de Cloud SQL para SQL Server a una instancia de Cloud SQL para SQL Server con Database Migration Service. Con este flujo de migración, puedes mover tus bases de datos a otro Cloud SQL para SQL Server en el mismo proyecto de Google Cloud o en uno diferente. Para obtener instrucciones sobre cómo migrar desde fuentes autoadministradas o de Amazon RDS, consulta la guía de migración para fuentes autoadministradas y de Amazon RDS.

El proceso de migración para las fuentes de Cloud SQL para SQL Server incluye las siguientes tareas:

  1. Configurar tu instancia de Cloud SQL para SQL Server de origen para que Database Migration Service pueda exportar automáticamente archivos de copia de seguridad a un bucket de Cloud Storage

  2. Crea un perfil de conexión fuente con Google Cloud CLI.

  3. Se está creando la instancia de Cloud SQL para SQL Server de destino.

  4. Crear y ejecutar el trabajo de migración en Database Migration Service con Google Cloud CLI

  5. Supervisar el progreso del trabajo de migración con las funciones de observabilidad de Database Migration Service

  6. 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 para fines de migración.

En este documento, usarás los siguientes componentes facturables deGoogle 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

  1. Verifica si esta ruta de migración puede admitir completamente tu situación. Consulta las limitaciones conocidas de SQL Server.
  2. 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, buckets de almacenamiento) deben guardarse en una sola región.
  3. En la consola de Google Cloud , en la página del selector de proyectos, selecciona o crea un proyecto de Google Cloud .

    Ir al selector de proyectos

  4. Habilita las APIs de Database Migration Service, Compute Engine, Cloud Storage y Cloud SQL Admin.

    Habilita las API

Roles obligatorios

Para obtener los permisos que necesitas para realizar migraciones homogéneas entre dos instancias de Cloud SQL para SQL Server con Database Migration Service, pídele a tu administrador que otorgue los roles de IAM requeridos a las cuentas involucradas en el proceso de migración en los proyectos pertinentes.

Este caso de uso te permite migrar entre dos instancias de Cloud SQL para SQL Server que residen en diferentes Google Cloud proyectos. Si deseas migrar entre instancias en el mismo proyecto, otorga todos los permisos en el mismo proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

Roles y permisos en el proyecto de origen

Otorga los siguientes roles a cuentas específicas en el proyecto Google Cloud en el que reside tu instancia de Cloud SQL para SQL Server fuente:

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 (proyecto de origen):

Permisos necesarios (proyecto de origen)

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:
    • 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 del proyecto de destino:
    • cloudsql.instances.export
    • cloudsql.instances.get
    • cloudsql.instances.list
    • cloudsql.instances.executeSql

También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.

Roles y permisos en el proyecto de destino

Otorga los siguientes roles a cuentas específicas en el proyecto Google Cloud en el que reside tu instancia de Cloud SQL para SQL Server de destino:

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 (proyecto de destino):

Permisos necesarios (proyecto de destino)

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
  • Cuenta de servicio de Cloud SQL asociada con la instancia source:
    • storage.objects.create
    • storage.objects.list
    • storage.objects.get

También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.

Prepara tu instancia de Cloud SQL de origen

  1. Crea un bucket de Cloud Storage en el proyecto de destino. Google Cloud Este bucket se usa para almacenar los archivos de registro de copias de seguridad exportados desde tu instancia de Cloud SQL para SQL Server de origen.

    • Te recomendamos que configures el período de retención de datos entre 14 y 30 días para estos archivos de copia de seguridad.
    • La cuenta de servicio de Cloud SQL asociada con tu instancia de origen necesita el rol de IAM de Usuario de objetos de almacenamiento (roles/storage.objectUser) para escribir los archivos de copia de seguridad en este bucket. Para obtener más información sobre los permisos de este flujo de migración, consulta la sección Roles obligatorios.
  2. Configura tu instancia de origen de Cloud SQL para SQL Server.

  3. Crea un perfil de conexión de origen para la instancia de origen de Cloud SQL para SQL Server.

Prepara tu instancia de destino de Cloud SQL para SQL Server

Para configurar tu instancia de Cloud SQL de destino, sigue estos pasos:

  1. 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.

  2. Crea un perfil de conexión de destino para tu instancia de Cloud SQL.

Crea y ejecuta el trabajo de migración

  1. Crea y ejecuta el trabajo de migración para una fuente de Cloud SQL para SQL Server.

Cuando inicias el trabajo de migración, tus 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 promover tu instancia de destino cuando tus datos se migren por completo. Una vez que se promueva 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.

Finaliza la migración

Cuando decidas cambiar tu aplicación a la nueva instancia de Cloud SQL para SQL Server, finaliza la migración siguiendo estos pasos:

  1. 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.
  2. Promociona el trabajo de migración.
  3. (Opcional) Verifica que los datos de migración estén completos.