Configura una base de datos de Oracle conectable

Datastream admite la arquitectura multiusuario de Oracle, en la que una sola base de datos de contenedor (CDB) contiene una o más bases de datos conectables (PDB). Cada base de datos conectable es una base de datos independiente con un ID y nombre únicos, y se puede administrar de forma independiente.

Para configurar una base de datos de Oracle con complementos autoalojada que puedas usar con Datastream, sigue estos pasos:

  1. Verifica que tu base de datos se ejecute en modo ARCHIVELOG. Para ello, ejecuta el siguiente comando desde el contenedor CDB$ROOT:

    SELECT LOG_MODE FROM V$DATABASE;

    1. Si el resultado es ARCHIVELOG, continúa con el paso 2.
    2. Si el resultado es NOARCHIVELOG, deberás habilitar el modo ARCHIVELOG para tu base de datos.
    3. Ejecuta los siguientes comandos cuando accedas como SYSDBA:

      SHUTDOWN IMMEDIATE;
      STARTUP MOUNT;
      ALTER DATABASE ARCHIVELOG;
      ALTER DATABASE OPEN;
      
    4. Los archivos de registro archivados consumen espacio en el disco, por lo que te recomendamos que configures el parámetro DB_RECOVERY_FILE_DEST_SIZE para tu base de datos. Usa este parámetro para especificar (en bytes) el límite estricto del espacio total que usarán los archivos de recuperación de la base de datos de destino. Si configuras este parámetro, puedes administrar la compensación entre proteger la base de datos para que no se quede sin espacio en el disco y que la transmisión falle debido a la pérdida de la posición del registro.

  2. Ejecuta el siguiente comando de Oracle Recovery Manager (RMAN) desde el contenedor CDB$ROOT para definir una política de retención de datos para tu base de datos:

    CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 4 DAYS;
    

    El comando define la política de retención de datos para todas las bases de datos conectables en tu base de datos de contenedor.

    Te recomendamos conservar las copias de seguridad y archivar los registros durante un mínimo de 4 días y se recomiendan 7 días.

  3. Regresa al mensaje de SQL de la herramienta de base de datos que usas para configurar la política de rotación de archivos de registro de Oracle. Recomendamos configurar un tamaño máximo de archivo de registro de no más de 512 MB.

  4. Habilita los datos de registros complementarios. Para ello, primero habilita el registro complementario en la base de datos a nivel del contenedor CDB$ROOT ejecutando el siguiente comando:

    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
    

    A continuación, elige si quieres activar el registro para tablas específicas o para toda la base de datos intercambiable.

    Para registrar solo los cambios de tablas específicas, conéctate al contenedor de base de datos conectable y ejecuta el siguiente comando por cada tabla que quieras replicar:

    ALTER TABLE SCHEMA.TABLE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS
    

    Reemplaza lo siguiente:

    • SCHEMA: Es el nombre del esquema que contiene la tabla.
    • TABLE: Es el nombre de la tabla para la que deseas registrar los cambios.

    Para replicar varias o todas las tablas en tu base de datos, considera activar el registro para toda la base de datos.

    Ejecuta el siguiente comando para habilitar los datos de registros complementarios para toda la base de datos:

    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
    
  5. Crea un usuario común. Un usuario común tiene la misma identidad en el contenedor CDB$ROOT y en las bases de datos conectables. Un usuario común puede conectarse y realizar operaciones dentro del contenedor CDB$ROOT y en cualquier base de datos conectable en la que tenga privilegios. El nombre de usuario común debe comenzar con C## o c##.

  6. Otorga los privilegios adecuados al usuario común que se usará para conectarse a tu base de datos. Se requieren permisos diferentes a nivel del contenedor CDB$ROOT y la base de datos conectable.

    • Conéctate al contenedor CDB$ROOT y ejecuta los siguientes comandos:
    GRANT CREATE SESSION TO USER_NAME;
    GRANT SET CONTAINER TO USER_NAME;
    GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;
    GRANT SELECT ON SYS.V_$LOGMNR_CONTENTS TO USER_NAME;
    GRANT EXECUTE ON DBMS_LOGMNR TO USER_NAME;
    GRANT EXECUTE ON DBMS_LOGMNR_D TO USER_NAME;
    GRANT LOGMINING TO USER_NAME;
    GRANT EXECUTE_CATALOG_ROLE TO USER_NAME;
    
    • Conéctate a la base de datos conectable y ejecuta los siguientes comandos:
    GRANT CREATE SESSION TO USER_NAME;
    GRANT SET CONTAINER TO USER_NAME;
    GRANT SELECT ANY TABLE TO USER_NAME;
    GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;
    GRANT SELECT ON SYS.V_$ARCHIVED_LOG TO USER_NAME;
    GRANT SELECT ON DBA_SUPPLEMENTAL_LOGGING TO USER_NAME;
    
  7. Otorga al usuario común SELECT acceso a la vista DBA_EXTENTS en tu base de datos. Este privilegio te permite usar el reabastecimiento basado en ROWID para tu fuente de Oracle:

    GRANT SELECT ON DBA_EXTENTS TO USER_NAME;

¿Qué sigue?

  • Obtén más información sobre cómo funciona Datastream con las fuentes de Oracle.