Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Configure los requisitos previos para la migración en Oracle

Cuando migras datos desde una base de datos fuente Oracle, Relational Migrator verifica automáticamente los cambios necesarios de configuración en tu base de datos y genera un script SQL para implementarlos. Solicita que un Administrador de Bases de Datos (DBA) haga una revisión del script y ejecute los comandos en el servidor de bases de datos. Esta página proporciona más detalles sobre los pasos de configuración necesarios.

Para obtener detalles sobre las versiones compatibles de Oracle, consulte Bases de datos y versiones compatibles.

  • Si migras de una instancia de Oracle 12c, debes ejecutar los comandos como el rol SYSDBA.

  • Oracle 12c introdujo el concepto de base de datos conectable (PDB). Algunos comandos se pueden ejecutar en una PDB, mientras que comandos como habilitar... ARCHIVELOG debe ejecutarse en el contenedor/base de datos principal (CDB). Para obtener detalles sobre cada arquitectura, consulta Descripción general de las bases de datos de contenedores y las bases de datos conectables.

  • Algunos comandos difieren según si la base de datos es monoinquilino o multiinquilino. En una base de datos multiinquilino, los permisos deben incluir el sufijo CONTAINER=ALL. Para comprobar si la base de datos es multiinquilino, ejecute la siguiente consulta SQL:

    SELECT cdb AS is_multitenant FROM v$database;

Para configurar su instancia de Oracle para trabajos de instantáneas:

1

El siguiente código crea una nueva cuenta de servicio Oracle para que Relational Migrator se conecte a la instancia de Oracle. Alternativamente, puede utilizar una cuenta de servicio Oracle existente para conectarse a Relational Migrator con los permisos correspondientes.

Tip

Para migrar datos desde una base de datos de contenedor multiinquilino, cree espacios de tabla y un usuario común.

  1. Crear una cuenta de servicio:

    CREATE USER <user> IDENTIFIED BY "<password>";
  2. Confirme que la cuenta de servicio sea la propietaria de las tablas en la tarea de migración.

    Los permisos necesarios dependen de si la cuenta de servicio es propietaria de las tablas utilizadas en el trabajo de migración. Para comprobar la propiedad de las tablas, ejecute la siguiente consulta:

    SELECT TABLE_NAME, OWNER
    FROM ALL_TABLES
    WHERE TABLE_NAME ='<table_name>'
    ORDER BY OWNER, TABLE_NAME;
  3. Otorgar permisos a la cuenta de servicio.

    Importante

    Si estás migrando una base de datos de contenedores multitenant como usuario común, añade CONTAINER=ALL al otorgar permisos. Por ejemplo:

    GRANT CREATE SESSION TO <user> CONTAINER=ALL;

    Si la cuenta de servicio es la propietaria de la tabla:

    GRANT CREATE SESSION TO <user>;
    GRANT SELECT ON V_$DATABASE TO <user>;

    Si la cuenta de servicio no es el propietario de la tabla:

    GRANT CREATE SESSION TO <user>;
    GRANT SELECT_CATALOG_ROLE TO <user>;
    GRANT SELECT ANY TABLE TO <user>;
    GRANT SELECT ON V_$DATABASE TO <user>;
    GRANT FLASHBACK ANY TABLE TO <user>;

Volver

Oracle

En esta página