Migración mediante migración lógica

En estos pasos, se describe cómo realizar una migración lógica offline. Las migraciones lógicas en línea requieren un servidor adicional que ejecute Oracle GoldenGate, lo que garantiza que la base de datos siempre esté en línea durante la migración. Antes de realizar la migración lógica fuera de línea, tenga en cuenta lo siguiente.

  • La base de datos origen del servidor x86 no tiene que estar cifrada. Oracle Zero Downtime Migration cifrará la base de datos destino durante la migración.
  • La contraseña sys, la versión de la base de datos y el nivel de parche en las bases de datos de origen y destino pueden ser diferentes.
  • La base de datos se puede actualizar durante la migración.
  • Las migraciones lógicas de migración sin tiempo de inactividad permitirán la migración de determinadas base de datos conectable (PDB) y esquemas a una base de datos conectable (PDB) en Oracle Exadata Database Service on Cloud@Customer.

Para ejecutar una migración lógica fuera de línea:

  1. Descargue e instale el software Zero Downtime Migration en un servidor independiente. Ejecute el software Zero Downtime Migration mediante zdmuser.
  2. Inicie sesión en el servidor de Zero Downtime Migration como zdmuser.
  3. Genere un par de claves SSH.
  4. Active ssh sin contraseña de zdmuser al servidor x86 de origen (root/privilege-sudoer user) y a todos los nodos de cluster de VM en la base de datos Oracle Exadata Database Service on Cloud@Customer de destino (opc user).
  5. En Oracle ZFS Storage Appliance (NAS), cree un recurso compartido del sistema de archivos de red (NFS) que se utilizará como marcador de posición para los volcados de datos de la base de datos mientras la migración está en curso.
  6. Monte el recurso compartido NFS en el mismo punto de montaje en todos los nodos de las bases de datos de origen y destino. Asegúrese de que todos los usuarios tienen permisos de lectura, escritura y ejecución (rwx) tanto en el origen como en el destino.
  7. Cree una base de datos destino en Oracle Exadata Database Service on Cloud@Customer mediante la GUI de OCI o la API de REST. Configure la base de datos de destino de la siguiente manera:
    • El nombre y la versión de la base de datos destino pueden ser diferentes del origen.
    • No seleccione un destino de copia de seguridad ni active las copias de seguridad automáticas. Esta configuración se puede activar después de que la base de datos se haya migrado de origen a destino.
  8. Utilice la GUI de OCI para crear una clave de API para el usuario de OCI propietario de la base de datos de destino Oracle Exadata Database Service on Cloud@Customer. Tome nota del OCID de usuario, el OCID de arrendamiento, la huella y la región de OCI. Guarde las claves privadas y públicas correspondientes en los archivos .pem. La migración sin tiempo de inactividad utilizará esta clave de API para conectarse a OCI y obtener la información de la base de datos destino durante la migración de la base de datos.
  9. Copie los archivos .pem en el servidor de Zero Downtime Migration.
  10. Conéctese como sys a la base de datos de destino de Oracle Exadata Database Service on Cloud@Customer y asegúrese de que el parámetro streams_pool_size esté definido en al menos 2G, por ejemplo:
    SQL>show parameter streams_pool_size;
    SQL>alter system set streams_pool_size=2G scope=both SID=’*’;
  11. Utilice la plantilla de archivo de respuesta de migración lógica de Zero Downtime Migration incluida con Zero Downtime Migration para crear un archivo de respuesta para la migración. Los parámetros clave incluyen:
    • TARGETDATABASE_OCID: OCID de la base de datos destino de Oracle Exadata Database Service on Cloud@Customer.
    • MIGRATION_METHOD: OFFLINE_LOGICAL
    • DATA_TRANSFER_MEDIUM: NFS
    • TARGETDATABASE_ADMINUSERNAME: system
    • SOURCEDATABASE_ADMINUSERNAME: system
    • SOURCEDATABASE_CONNECTIONDETAILS_HOST: IP/nombre de host del servidor de base de datos x86 de origen.
    • SOURCEDATABASE_CONNECTIONDETAILS_PORT: 1521
    • SOURCEDATABASE_CONNECTIONDETAILS_SERVICENAME: nombre de servicio de la PDB de origen o de una base de datos de contenedor (CDB). Utilice lsnrctl para buscar.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_TENANTID: OCID de arrendamiento del paso 8.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_USERID: OCID de usuario del paso 8.
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_FINGERPRINT: huella digital del paso 8.
    • OCIAUTHENTICATIONDETAILS_PRIVATEKEYFILE: ruta de archivo al archivo .pem de clave privada en el servidor ZDM del paso 9.
    • OCIAUTHENTICATIONDETAILS_REGIONID: ID de región de OCI para el usuario de OCI del paso 8.
    • TARGETDATABASE_CONECTIONDETAILS_HOST: IP/nombre de host de la primera VM en el cluster de VM de destino de Oracle Exadata Database Service on Cloud@Customer.
    • TARGETDATABASE_CONNECTIONDETAILS_PORT: 1521
    • TARGETDATABASE_CONNECTIONDETAILS_SERVICENAME: nombre de servicio para la base de datos de conexión (PDB) de destino en la base de datos Oracle Exadata Database Service on Cloud@Customer de destino. Utilice lsnrctl para buscar.
    • SOURCECONTAINERDATABASE_ADMINUSERNAME: system
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_HOST: IP/nombre de host del servidor de base de datos de origen x86.
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_PORT: 1521
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_SERVICENAME: nombre del servicio para la base de datos de contenedor de origen en el servidor x86. Utilice lsnrctl para buscar).
    • DATAPUMPSETTINGS_JOBMODE: SCHEMA
    • DATAPUMPSETTINGS_FIXINVALIDOBJECTS: TRUE
    • DATAPUMPSETTINGS_EXPORTDIRECTORYOBJECT_NAME: mig
    • DATAPUMPSETTINGS_EXPORTDIRECTORYOBJECT_PATH: punto de montaje NFS del paso 6.
    • DATAPUMPSETTINGS_IMPORTDIRECTORYOBJECT_NAME: mig
    • DATAPUMPSETTINGS_IMPORTDIRECTORYOBJECT_PATH: punto de montaje NFS del paso 6.
    • DATAPUMPSETTINGS_CREATEAUTHTOKEN: TRUE
    • TABLESPACEDETAILS_AUTOCREATE: TRUE
    • TABLESPACEDETAILS_USEBIGFILE: TRUE
    • TABLESPACEDETAILS_EXTENTSIZEMB: 512
    • EXCLUDEOBJECTS-1: owner:PDBADMIN
  12. Se puede ejecutar un trabajo de migración en seco de ejecución de migración sin tiempo de inactividad (-eval) para validar todos los requisitos previos para la migración. Se ejecutará la herramienta Cloud Pre-Migration Advisor Tool (CPAT) para validar que la base de datos origen es adecuada para la migración a Oracle Exadata Database Service on Cloud@Customer mediante la migración lógica Zero Downtime Migration. Abordar los problemas notificados por CPAT antes de continuar. Por ejemplo:
    zdmcli migrate database -sourcedb source_db_name \
    -sourcenode IP/hostname_of_x86_db_server \
    -srcauth zdmauth \
    -srcarg1 user: root_or_sudoer_user \
    -srcarg2 identity_file: path_to_ssh_private_key/ssh_private_key_file_name
    \
    -srcarg3 sudo_location:/usr/bin/sudo \
    -targetnode IP/hostname_of_first_Exadata_Database_Cloud@Customer_VM_Cluster_Node
    -tgtarg1 user:opc \
    -tgtarg2 identity_file: path_to_ssh_private_key/ssh_private_key_file_name
    \
    -tgtarg3 sudo_location:/usr/bin/sudo \
    -rsp path_to_response_file/response_file_name_from_step_11 \
    -eval
    Después de una migración correcta de ejecución simulada, continúe con el siguiente paso.
  13. Ejecute el trabajo de migración sin tiempo de inactividad. Por ejemplo:
    zdmcli migrate database -sourcedb source_db_name \
    -sourcenode IP/hostname_of_x86_db_server \
    -srcauth zdmauth \
    -srcarg1 user: root_or_sudoer_user \
    -srcarg2 identity_file: path_to_ssh_private_key/ssh_private_key_file_name
    \
    -srcarg3 sudo_location:/usr/bin/sudo \
    -targetnode IP/hostname_of_first_Exadata_Database_Cloud@Customer_VM_Cluster_Node
    -tgtarg1 user:opc \
    -tgtarg2 identity_file:path_to_ssh_private_key/ssh_private_key_file_name
    \
    -tgtarg3 sudo_location:/usr/bin/sudo \
    -rsp path_to_response_file/response_file_name_from_step_11