Este contenido aún no está optimizado para dispositivos móviles.
Para obtener la mejor experiencia, visítanos en una computadora de escritorio con un vínculo que te enviaremos por correo electrónico.
GSP918
Descripción general
Database Migration Service proporciona opciones para trabajos únicos y continuos para migrar datos a Cloud SQL. Ofrece varios métodos de conectividad, incluidas las listas de IPs permitidas, los túneles SSH inversos, el intercambio de tráfico entre VPC y las interfaces de Private Service Connect. Obtén más información sobre las opciones de conectividad en la guía de configuración de la conectividad.
En este lab, se explica cómo migrar una base de datos de PostgreSQL independiente, alojada en una máquina virtual, a Cloud SQL para PostgreSQL. La migración utiliza un trabajo continuo de Database Migration Service y emplea el intercambio de tráfico entre VPC para establecer la conectividad.
Para usar Database Migration Service en la migración de bases de datos, se requieren varios pasos preparatorios en la base de datos de origen:
Crea un usuario exclusivo: Este usuario debe tener derechos de replicación.
Agrega la extensión pglogical: Esta extensión debe instalarse en la base de datos de origen.
Otorga los derechos necesarios: Se deben otorgar derechos al usuario dedicado para los esquemas y las tablas dentro de la base de datos designada para la migración, así como para la base de datos de postgres.
Una vez que se complete la configuración, crearás y ejecutarás el trabajo de migración. El proceso de migración implica lo siguiente:
Copia inicial: Confirma la transferencia exitosa de la copia inicial de la base de datos a tu instancia de Cloud SQL.
Migración continua: Explora cómo los trabajos de migración en curso aplican actualizaciones de datos en tiempo real desde la instancia de origen a la de Cloud SQL.
Ascenso: Se concluye el trabajo ascendiendo la instancia de Cloud SQL para que funcione como una base de datos independiente, lista para operaciones de lectura y escritura.
Actividades
Preparar la base de datos de origen para la migración
Crear un perfil para una conexión de origen a una instancia de PostgreSQL (p. ej., PostgreSQL independiente)
Configurar la conectividad entre las instancias de base de datos de origen y de destino usando el intercambio de tráfico entre VPC
Configurar las reglas de acceso al firewall y la base de datos para permitir el acceso a la base de datos de origen para realizar la migración
Crear, ejecutar y verificar un trabajo de migración continuo usando Database Migration Service
Ascender la instancia de destino (Cloud SQL para PostgreSQL) para que sea una base de datos independiente en la que se pueda leer y escribir datos
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago.
A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
El botón para abrir la consola de Google Cloud
El tiempo restante
Las credenciales temporales que debes usar para el lab
Otra información para completar el lab, si es necesaria
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}}
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
Haz clic en Siguiente.
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}}
También puedes encontrar la contraseña en el panel Detalles del lab.
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud.
Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
Haz clic para avanzar por las páginas siguientes:
Acepta los Términos y Condiciones.
No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar.
Activa Cloud Shell
Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.
Haz clic en Activar Cloud Shell en la parte superior de la consola de Google Cloud.
Haz clic para avanzar por las siguientes ventanas:
Continúa en la ventana de información de Cloud Shell.
Autoriza a Cloud Shell para que use tus credenciales para realizar llamadas a la API de Google Cloud.
Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu Project_ID, . El resultado contiene una línea que declara el Project_ID para esta sesión:
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
gcloud es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.
Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
gcloud auth list
Haz clic en Autorizar.
Resultado:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
Puedes solicitar el ID del proyecto con este comando (opcional):
gcloud config list project
Resultado:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Nota: Para obtener toda la documentación de gcloud, en Google Cloud, consulta la guía con la descripción general de gcloud CLI.
Verifica que la API de Database Migration esté habilitada
La API de Database Migration es necesaria para administrar el movimiento de los datos de la base de datos a través de Database Migration Service.
En la barra de título de la consola de Google Cloud, ingresa API de Database Migration en el campo Buscar y, luego, haz clic en Database Migration API en los resultados.
El botón Administrar se muestra cuando la API está habilitada.
Si ves el botón Habilitar, haz clic en él para habilitar la API.
Verifica que la API de Service Networking esté habilitada
La API de Service Networking es necesaria para configurar Cloud SQL y que admita el intercambio de tráfico entre VPC y las conexiones a través de una dirección IP privada.
En la barra de título de la consola de Cloud, ingresa API de Service Networking en el campo Buscar y, luego, haz clic en Service Networking API en los resultados de la búsqueda.
El botón Administrar se muestra cuando la API está habilitada.
Si ves el botón Habilitar, haz clic en él para habilitar la API.
Tarea 1: Prepara la base de datos de origen para la migración
Para preparar la base de datos de origen para la migración a través de Database Migration Service, actualiza la base de datos con la extensión pglogical y, luego, crea el usuario de migración de la base de datos.
Para actualizar la base de datos con la extensión pglogical, debes hacer lo siguiente:
Instala y configura la extensión pglogical.
Configura la base de datos de PostgreSQL independiente para permitir el acceso desde Cloud Shell y Cloud SQL.
Agrega la extensión de base de datos pglogical a las bases de datos postgres, orders y gmemegen_db en el servidor independiente.
Para crear el usuario de migración de la base de datos, crea un usuario migration_admin (con permisos de replicación) para la migración de la base de datos y, luego, otórgale los permisos necesarios para los esquemas y las relaciones.
Actualiza la base de datos con la extensión pglogical
En esta sección, descargarás la extensión pglogical y la agregarás a las bases de datos orders y postgres en la instancia de VM postgresql-vm.
En el menú de navegación () de la consola de Google Cloud, haz clic en Compute Engine > Instancias de VM.
En la instancia de VM postgresql-vm, haz clic en SSH.
Si se te solicita, haz clic en Autorizar.
En la nueva ventana de terminal, instala la extensión de base de datos pglogical:
sudo apt install postgresql-14-pglogical
Nota:pglogical es un sistema de replicación lógica implementado por completo como extensión de PostgreSQL. Como está completamente integrado, no requiere activadores ni programas externos. Esta alternativa a la replicación física es un método altamente eficiente para replicar datos usando un modelo de publicación y suscripción para replicaciones selectivas.
Descarga y aplica algunas incorporaciones a los archivos de configuración de PostgreSQL (para habilitar la extensión pglogical) y reinicia el servicio de postgresql:
sudo su - postgres -c "gsutil cp gs://spls/gsp918/pg_hba_append.conf ."
sudo su - postgres -c "gsutil cp gs://spls/gsp918/postgresql_append.conf ."
sudo su - postgres -c "cat pg_hba_append.conf >> /etc/postgresql/14/main/pg_hba.conf"
sudo su - postgres -c "cat postgresql_append.conf >> /etc/postgresql/14/main/postgresql.conf"
sudo systemctl restart postgresql@14-main
Estos archivos en pg_hba.conf agregan una regla para permitir el acceso a todos los hosts:
#GSP918 - allow access to all hosts
host all all 0.0.0.0/0 md5
Estos comandos en postgresql.conf establecen la configuración mínima para que pglogical escuche en todas las direcciones:
#GSP918 - added configuration for pglogical database extension
wal_level = logical # minimal, replica, or logical
max_worker_processes = 10 # one per database needed on provider node
# one per node needed on subscriber node
max_replication_slots = 10 # one per node needed on provider node
max_wal_senders = 10 # one per node needed on provider node
shared_preload_libraries = 'pglogical'
max_wal_size = 1GB
min_wal_size = 80MB
listen_addresses = '*' # what IP address(es) to listen on, '*' is all
Los fragmentos de código anteriores se agregaron a los archivos relevantes y se reinició el servicio de PostgreSQL.
Inicia la herramienta psql:
sudo su - postgres
psql
Agrega la extensión de base de datos pglogical a las bases de datos postgres, orders y gmemegen_db:
Haz una lista de las bases de datos de PostgreSQL en el servidor:
\l
El siguiente resultado enumera las bases de datos postgresql predeterminadas, así como las bases de datos orders y gmemegen_db proporcionadas para este lab. No usarás la base de datos gmemegen_db en este lab.
En esta sección, crearás un usuario exclusivo para administrar la migración de la base de datos.
En psql, ingresa los siguientes comandos para crear un usuario nuevo con el rol de replicación:
CREATE USER migration_admin PASSWORD 'DMS_1s_cool!';
ALTER DATABASE orders OWNER TO migration_admin;
ALTER ROLE migration_admin WITH REPLICATION;
Asigna los permisos al usuario de migración
En esta sección, le asignarás los permisos necesarios al usuario migration_admin para habilitar Database Migration Service y, así, migrar tu base de datos.
En psql, otórgale los permisos para el esquema y las tablas de pglogical a la base de datos postgres:
\c postgres;
GRANT USAGE ON SCHEMA pglogical TO migration_admin;
GRANT ALL ON SCHEMA pglogical TO migration_admin;
GRANT SELECT ON pglogical.tables TO migration_admin;
GRANT SELECT ON pglogical.depend TO migration_admin;
GRANT SELECT ON pglogical.local_node TO migration_admin;
GRANT SELECT ON pglogical.local_sync_status TO migration_admin;
GRANT SELECT ON pglogical.node TO migration_admin;
GRANT SELECT ON pglogical.node_interface TO migration_admin;
GRANT SELECT ON pglogical.queue TO migration_admin;
GRANT SELECT ON pglogical.replication_set TO migration_admin;
GRANT SELECT ON pglogical.replication_set_seq TO migration_admin;
GRANT SELECT ON pglogical.replication_set_table TO migration_admin;
GRANT SELECT ON pglogical.sequence_state TO migration_admin;
GRANT SELECT ON pglogical.subscription TO migration_admin;
Otorga permisos al esquema y las tablas de pglogical para la base de datos orders:
\c orders;
GRANT USAGE ON SCHEMA pglogical TO migration_admin;
GRANT ALL ON SCHEMA pglogical TO migration_admin;
GRANT SELECT ON pglogical.tables TO migration_admin;
GRANT SELECT ON pglogical.depend TO migration_admin;
GRANT SELECT ON pglogical.local_node TO migration_admin;
GRANT SELECT ON pglogical.local_sync_status TO migration_admin;
GRANT SELECT ON pglogical.node TO migration_admin;
GRANT SELECT ON pglogical.node_interface TO migration_admin;
GRANT SELECT ON pglogical.queue TO migration_admin;
GRANT SELECT ON pglogical.replication_set TO migration_admin;
GRANT SELECT ON pglogical.replication_set_seq TO migration_admin;
GRANT SELECT ON pglogical.replication_set_table TO migration_admin;
GRANT SELECT ON pglogical.sequence_state TO migration_admin;
GRANT SELECT ON pglogical.subscription TO migration_admin;
Otorga permisos al esquema y las tablas de public para la base de datos orders:
GRANT USAGE ON SCHEMA public TO migration_admin;
GRANT ALL ON SCHEMA public TO migration_admin;
GRANT SELECT ON public.distribution_centers TO migration_admin;
GRANT SELECT ON public.inventory_items TO migration_admin;
GRANT SELECT ON public.order_items TO migration_admin;
GRANT SELECT ON public.products TO migration_admin;
GRANT SELECT ON public.users TO migration_admin;
Otorga permisos al esquema y las tablas de pglogical para la base de datos gmemegen_db:
\c gmemegen_db;
GRANT USAGE ON SCHEMA pglogical TO migration_admin;
GRANT ALL ON SCHEMA pglogical TO migration_admin;
GRANT SELECT ON pglogical.tables TO migration_admin;
GRANT SELECT ON pglogical.depend TO migration_admin;
GRANT SELECT ON pglogical.local_node TO migration_admin;
GRANT SELECT ON pglogical.local_sync_status TO migration_admin;
GRANT SELECT ON pglogical.node TO migration_admin;
GRANT SELECT ON pglogical.node_interface TO migration_admin;
GRANT SELECT ON pglogical.queue TO migration_admin;
GRANT SELECT ON pglogical.replication_set TO migration_admin;
GRANT SELECT ON pglogical.replication_set_seq TO migration_admin;
GRANT SELECT ON pglogical.replication_set_table TO migration_admin;
GRANT SELECT ON pglogical.sequence_state TO migration_admin;
GRANT SELECT ON pglogical.subscription TO migration_admin;
Otorga permisos al esquema y las tablas de public para la base de datos gmemegen_db:
GRANT USAGE ON SCHEMA public TO migration_admin;
GRANT ALL ON SCHEMA public TO migration_admin;
GRANT SELECT ON public.meme TO migration_admin;
Ahora, las bases de datos de origen están preparadas para la migración. Los permisos que le otorgaste al usuario migration_admin es todo lo que se necesita para que Database Migration Service migre las bases de datos postgres, orders y gmemegen_db.
Convierte al usuario migration_admin en propietario de las tablas en la base de datos orders para que puedas editar los datos de origen más adelante cuando hagas pruebas de la migración.
Ejecuta los siguientes comandos:
\c orders;
\dt
ALTER TABLE public.distribution_centers OWNER TO migration_admin;
ALTER TABLE public.inventory_items OWNER TO migration_admin;
ALTER TABLE public.order_items OWNER TO migration_admin;
ALTER TABLE public.products OWNER TO migration_admin;
ALTER TABLE public.users OWNER TO migration_admin;
\dt
Resultado
List of relations
Schema | Name | Type | Owner
--------+----------------------+-------+-------
public | distribution_centers | table | migration_admin
public | inventory_items | table | migration_admin
public | order_items | table | migration_admin
public | products | table | migration_admin
public | users | table | migration_admin
(5 rows)
Sal de psql y de la sesión del usuario de postgres:
\q
exit
Haz clic en Revisar mi progreso para verificar el objetivo.
Preparar la instancia PostgreSQL de origen para la migración.
Tarea 2: Crea un perfil de conexión a Database Migration Service para una base de datos de PostgreSQL independiente
En esta tarea, crearás un perfil de conexión para la instancia de PostgreSQL de origen.
Obtén la información de conectividad para la instancia de PostgreSQL de origen
En este paso, identificarás la dirección IP interna de la instancia de base de datos de origen que migrarás a Cloud SQL.
En el menú de navegación () de la consola de Google Cloud, haz clic en Compute Engine > Instancias de VM.
En la lista de instancias, busca postgresql-vm.
Copia la IP interna (p. ej., 10.128.0.2) para configurar un perfil de conexión en la siguiente sección.
Crea un nuevo perfil de conexión para la instancia de PostgreSQL de origen
Un perfil de conexión almacena información sobre la instancia de base de datos de origen (p. ej., PostgreSQL independiente), y Database Migration Service lo utiliza para migrar datos desde el origen hasta tu instancia de base de datos de Cloud SQL de destino. Después de crear un perfil de conexión, se puede volver a utilizar en los trabajos de migración.
En este paso, crearás un nuevo perfil de conexión para la instancia PostgreSQL de origen.
En la consola de Google Cloud, en el menú de navegación (), haz clic en Ver todos los productos. En la sección Bases de datos, haz clic en Migración de bases de datos > Perfiles de conexión.
Haz clic en Crear perfil.
Especifica los siguientes campos y deja los restantes con sus valores predeterminados:
Campo
Valor
Rol de perfil
Origen
Motor de base de datos
PostgreSQL
Nombre del perfil de conexión
postgres-vm
Región
Definir los parámetros de configuración de conexión
Definir
Nombre de host o dirección IP
la IP interna de la instancia PostgreSQL de origen que copiaste en la tarea anterior (p. ej., 10.128.0.2)
Puerto
5432
Nombre de usuario
migration_admin
Contraseña
DMS_1s_cool!
Haz clic en Guardar.
Haz clic en Crear.
Aparecerá un nuevo perfil de conexión con el nombre postgres-vm en la lista de perfiles llamada Conexiones.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear un perfil de conexión para la instancia PostgreSQL de origen.
Tarea 3: Crea e inicia un trabajo de migración continuo
Para crear un trabajo de migración nuevo, primero debes especificar la instancia de base de datos de origen con un perfil de conexión existente. A continuación, debes establecer la instancia de base de datos de destino y configurar la conectividad necesaria entre las instancias de origen y de destino.
En esta tarea, usarás la interfaz del trabajo de migración para crear una nueva instancia de base de datos de Cloud SQL para PostgreSQL y la establecerás como el destino para el trabajo de migración continuo de la instancia de origen de PostgreSQL.
Crea un nuevo trabajo de migración continuo
En este paso, crearás un nuevo trabajo de migración continuo.
En el menú de navegación () de la consola, haz clic en Ver todos los productos. En la sección Bases de datos, haz clic en Migración de bases de datos > Trabajos de migración.
Haz clic en Crear trabajos de migración.
Especifica los siguientes campos y deja los restantes con sus valores predeterminados:
Campo
Valor
Nombre del trabajo de migración
vm-to-cloudsql
Motor de base de datos de origen
PostgreSQL
Motor de la base de datos de destino
Cloud SQL para PostgreSQL
Región de destino
Tipo de trabajo de migración
Continuo
Haz clic en Guardar y continuar.
Define la instancia de origen
En este paso, definirás la instancia de origen para la migración.
En Perfil de conexión fuente, selecciona postgres-vm.
Deja los valores predeterminados para el resto de la configuración.
Haz clic en Guardar y continuar.
Define la instancia de destino
En este paso, definirás la instancia de destino para la migración.
En Tipo de instancia de destino, selecciona Instancia existente.
En Elegir instancia de destino, selecciona postgresql-cloudsql.
Haz clic en Elegir y continuar.
Si se te solicita confirmación, ingresa el nombre de la instancia postgresql-cloudsql.
Haz clic en Confirmar y continuar.
Nota: Ignora la advertencia “Tu instancia de destino descenderá de nivel y se convertirá en una réplica de tu base de datos de origen”.
Define el método de conectividad
En este paso, definirás el método de conectividad para la migración.
En Método de conectividad, selecciona Intercambio de tráfico entre VPC.
En VPC, selecciona predeterminada.
Database Migration Service configura el intercambio de tráfico entre VPC usando la información proporcionada por la red de VPC (la red predeterminada en este ejemplo).
Cuando veas un mensaje actualizado que indica que se creó la instancia de destino, avanza al siguiente paso.
Haz clic en Configurar y continuar.
Configura las bases de datos de migración
En este paso, definirás la instancia de origen para la migración.
En Bases de datos para migrar, selecciona Todas las bases de datos.
Haz clic en Guardar y continuar.
Permite el acceso a la instancia postgresql-vm desde un rango de IP asignado automáticamente
En este paso, editarás el archivo de configuración de PostgreSQL pg_hba.conf para permitir que Database Migration Service acceda a la base de datos de PostgreSQL independiente.
Obtén el rango de direcciones IP asignadas. En la consola, en el menú de navegación (), haz clic en Red de VPC y, luego, haz clic con el botón derecho en Intercambio de tráfico entre redes de VPC y ábrelo en una pestaña nueva.
Haz clic en la entrada servicenetworking-googleapis-com y, luego, en Vista Rutas eficaces en la parte inferior.
En el menú desplegable de Red, selecciona predeterminada y, en Región, selecciona . Haz clic en Ver.
En la columna Rango de IP de destino, guarda el rango de IP (p. ej., 10.107.176.0/24) junto a la ruta peering-route-xxxxx… para usarlo en un paso próximo.
En la sesión de terminal en la instancia de VM, edita el archivo pg_hba.conf de la siguiente manera:
sudo nano /etc/postgresql/14/main/pg_hba.conf
En la última línea del archivo:
#GSP918 - allow access to all hosts
host all all 0.0.0.0/0 md5
Reemplaza el rango "todas las direcciones IP" (0.0.0.0/0) por el que guardaste en el paso anterior.
#GSP918 - allow access to all hosts
host all all 10.107.176.0/24 md5
Nota: El paso anterior no es obligatorio para realizar el trabajo de migración, pero se recomienda proteger más la base de datos de origen durante el proceso de migración y, además, restringir el acceso después de la migración cuando la base de datos migrada se convierta en la fuente de información.
Presiona CTRL + O, Intro y CTRL + X para guardar el archivo y salir del editor nano.
Reinicia el servicio de PostgreSQL para que se apliquen los cambios. En la sesión de terminal de la instancia de VM, ingresa lo siguiente:
sudo systemctl start postgresql@14-main
Prueba y, luego, inicia el trabajo de migración continuo
En este paso, probarás y, luego, iniciarás el trabajo de migración.
En la pestaña Database Migration Service que abriste anteriormente, revisa los detalles del trabajo de migración.
Haz clic en Probar trabajo.
Si la prueba se realiza correctamente, haz clic en Crear y ejecutar trabajo.
Si se te solicita confirmar, haz clic en Crear y comenzar.
Revisa el estado del trabajo de migración continuo
En este paso, confirmarás que el trabajo de migración continuo se esté ejecutando.
En la consola de Google Cloud, en el menú de navegación (), haz clic en Migración de bases de datos > Trabajos de migración.
Haz clic en el trabajo de migración vm-to-cloudsql para ver la página de detalles.
Revisa el estado del trabajo de migración.
Si no has iniciado el trabajo, el estado aparecerá como Sin iniciar. Puedes optar por iniciar o borrar el trabajo.
Después de que comience el trabajo, el estado aparecerá como Iniciando y, luego, cambiará a En ejecución | Volcado completo en curso para indicar que se está realizando el volcado inicial de la base de datos.
Cuando se complete, el estado cambiará a En ejecución | CDC en curso para indicar que la migración continua está activa.
Cuando el estado del trabajo cambie a En ejecución | CDC en curso, avanza al próximo paso.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear, iniciar y revisar un trabajo de migración continuo.
Tarea 4: Confirma los datos en Cloud SQL para PostgreSQL
Verifica las bases de datos de PostgreSQL en Cloud SQL
En el menú de navegación () de la consola de Google Cloud, haz clic en SQL.
Expande el ID de instancia que tiene el nombre postgresql-cloudsql-master.
Haz clic en la instancia postgresql-cloudsql (réplica de lectura de PostgreSQL).
En el menú Instancia de réplica, haz clic en Bases de datos.
Ten en cuenta que se migraron a Cloud SQL las bases de datos llamadas postgres, orders y gmemegen_db.
Conéctate a la instancia de PostgreSQL
En el menú Instancia de réplica, haz clic en Descripción general.
Desplázate hasta la sección Conectarse a esta instancia y haz clic en Abrir Cloud Shell.
El comando para conectarte a PostgreSQL se prepropaga en Cloud Shell:
Si se te solicita, haz clic en Autorizar para la API.
Cuando se te solicite una contraseña, ingresa la que ya estableciste:
supersecret!
Acabas de activar la consola interactiva de PostgreSQL para la instancia de destino.
Revisa los datos en la instancia de Cloud SQL para PostgreSQL
Para seleccionar la base de datos en la consola interactiva de PostgreSQL, ejecuta el siguiente comando:
\c orders;
Cuando se te solicite una contraseña, ingresa la siguiente:
supersecret!
Consulta la tabla distribution_centers:
select * from distribution_centers;
(Resultado)
longitude | latitude | name | id
-----------+----------+---------------------------------------------+----
-89.9711 | 35.1174 | Memphis TN | 1
-87.6847 | 41.8369 | Chicago IL | 2
-95.3698 | 29.7604 | Houston TX | 3
-118.25 | 34.05 | Los Angeles CA | 4
-90.0667 | 29.95 | New Orleans LA | 5
-73.7834 | 40.634 | Port Authority of New York/New Jersey NY/NJ | 6
-75.1667 | 39.95 | Philadelphia PA | 7
-88.0431 | 30.6944 | Mobile AL | 8
-79.9333 | 32.7833 | Charleston SC | 9
-81.1167 | 32.0167 | Savannah GA | 10
Sal de la consola interactiva de PostgreSQL escribiendo lo siguiente:
\q
Actualiza los datos de origen independientes para probar la migración continua
En Cloud Shell, escribe los siguientes comandos para conectarte a la instancia de origen de PostgreSQL:
export VM_NAME=postgresql-vm
export PROJECT_ID=$(gcloud config list --format 'value(core.project)')
export POSTGRESQL_IP=$(gcloud compute instances describe ${VM_NAME} \
--zone={{{ project_0.default_zone|(zone) }}} --format="value(networkInterfaces[0].accessConfigs[0].natIP)")
echo $POSTGRESQL_IP
psql -h $POSTGRESQL_IP -p 5432 -d orders -U migration_admin
Nota: Los comandos anteriores son un enfoque alternativo para acceder a la base de datos independiente en la instancia de VM.
Cuando se te solicite una contraseña, ingresa la siguiente:
DMS_1s_cool!
En psql, ingresa los siguientes comandos:
\c orders;
insert into distribution_centers values(-80.1918,25.7617,'Miami FL',11);
Cierra la sesión interactiva de psql:
\q
Conéctate a la base de datos de PostgreSQL de Cloud SQL para verificar si se migraron los datos actualizados
En Cloud Shell, escribe los siguientes comandos para conectarte a la instancia de PostgreSQL de Cloud SQL de destino:
Cuando se te solicite una contraseña, ingresa la contraseña de la instancia de Cloud SQL que ya estableciste:
supersecret!
Acabas de activar la consola interactiva de PostgreSQL para la instancia de destino.
Revisa los datos de la base de datos de Cloud SQL para PostgreSQL
En Cloud Shell, selecciona la base de datos activa en la consola interactiva de PostgreSQL:
\c orders;
Cuando se te solicite una contraseña, ingresa la que ya estableciste:
supersecret!
Consulta la tabla distribution_centers:
select * from distribution_centers;
(Resultado)
longitude | latitude | name | id
-----------+----------+---------------------------------------------+----
-89.9711 | 35.1174 | Memphis TN | 1
-87.6847 | 41.8369 | Chicago IL | 2
-95.3698 | 29.7604 | Houston TX | 3
-118.25 | 34.05 | Los Angeles CA | 4
-90.0667 | 29.95 | New Orleans LA | 5
-73.7834 | 40.634 | Port Authority of New York/New Jersey NY/NJ | 6
-75.1667 | 39.95 | Philadelphia PA | 7
-88.0431 | 30.6944 | Mobile AL | 8
-79.9333 | 32.7833 | Charleston SC | 9
-81.1167 | 32.0167 | Savannah GA | 10
-80.1918 | 25.7617 | Miami FL | 11
Ten en cuenta que la nueva fila agregada a la base de datos independiente orders ahora está presente en la base de datos migrada.
Sal de la consola interactiva de PostgreSQL:
\q
Haz clic en Revisar mi progreso para verificar el objetivo.
Probar la migración continua de datos del origen al destino.
Tarea 5: Asciende Cloud SQL para que sea una instancia independiente en la que se pueda leer y escribir datos
En la consola de Google Cloud, en el menú de navegación (), haz clic en Ver todos los productos. En la sección Bases de datos, haz clic en Migración de bases de datos > Trabajos de migración.
Haz clic en el nombre de trabajo de migración vm-to-cloudsql para ver la página de detalles.
Haz clic en Ascender.
Si se te solicita confirmar la acción, haz clic en Ascender.
Cuando se complete el ascenso, el estado del trabajo se actualizará a Completado.
En el menú de navegación () de la consola de Google Cloud, haz clic en Ver todos los productos. En la sección Bases de datos, haz clic en SQL.
Ten en cuenta que postgresql-cloudsql ahora es una instancia independiente en la que se puede leer y escribir datos.
Haz clic en Revisar mi progreso para verificar el objetivo.
Ascender la base de datos de Cloud SQL para PostgreSQL para que sea una instancia independiente de lectura y escritura de datos.
¡Felicitaciones!
Configuraste un trabajo continuo de Database Migration Service para migrar bases de datos de una instancia de PostgreSQL a Cloud SQL para PostgreSQL.
Próximos pasos y más información
Obtén más información sobre la migración de datos, las bases de datos de Cloud SQL y Database Migration Service:
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 10 de diciembre de 2025
Prueba más reciente del lab: 10 de diciembre de 2025
Copyright 2026 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.
Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
.
Los labs tienen un límite de tiempo y no tienen la función de pausa. Si finalizas el lab, deberás reiniciarlo desde el principio.
En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar
Usa la navegación privada
Copia el nombre de usuario y la contraseña proporcionados para el lab
Haz clic en Abrir la consola en modo privado
Accede a la consola
Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
Acepta las condiciones y omite la página de recursos de recuperación
No hagas clic en Finalizar lab, a menos que lo hayas terminado o quieras reiniciarlo, ya que se borrará tu trabajo y se quitará el proyecto
Este contenido no está disponible en este momento
Te enviaremos una notificación por correo electrónico cuando esté disponible
¡Genial!
Nos comunicaremos contigo por correo electrónico si está disponible
Un lab a la vez
Confirma para finalizar todos los labs existentes y comenzar este
Usa la navegación privada para ejecutar el lab
Usa una ventana de navegación privada o de Incógnito para ejecutar el lab. Así
evitarás cualquier conflicto entre tu cuenta personal y la cuenta
de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
En este lab, migrarás una base de datos de PostgreSQL independiente (que se ejecuta en una máquina virtual) a Cloud SQL para PostgreSQL usando un trabajo continuo de Database Migration Service con intercambio de tráfico entre VPC como opción de conectividad.
Duración:
8 min de configuración
·
Acceso por 70 min
·
60 min para completar