ADD SCHEMATRANDATA

Válido para Oracle.

Utilice ADD SCHEMATRANDATA para activar el registro complementario de nivel del esquema para una tabla. ADD SCHEMATRANDATA actúa en todas las tablas actuales y futuras de un esquema especificado para registrar de manera automática un superjuego de claves disponibles que Oracle GoldenGate necesita para la identificación de las filas.

Nota: Oracle GoldenGate 23.6 no soporta la activación de la replicación lógica en el nivel de esquema para las vistas de dualidad relacional JSON (JSON DV) y las tablas de recopilación de JSON (JCT).

Para ejecutar ADD SCHEMATRANDATA en un esquema en la PDB de una base de Datos Multiinquilino, debe conectarse a una PDB para emitir el comando.

ADD SCHEMATRANDATA es válido para el Extract y realiza lo siguiente:

Por defecto, ADD SCHEMATRANDATA registra las columnas clave de una tabla en el siguiente orden de prioridad:

  1. Clave primaria

  2. En ausencia de una clave primaria, se registran todas las claves únicas de la tabla, incluidas aquellas que están desactivadas, no son utilizables o son invisibles. También se registran las claves únicas que contienen columnas de miembro de ADT. Las claves únicas de columnas virtuales (índices basados en funciones) son las únicas que no se registran.

  3. Si no existe ninguna de las anteriores, se registran todas las columnas escalares de la tabla. (Los OID de fila generados por el sistema siempre se registran).

ADD SCHEMATRANDATA también soporta los requisitos del registro condicionales o incondicionales para utilizar Replicat integrado.

Utilice ADD SCHEMATRANDATA en los siguientes casos:

Requisitos de Registro a Nivel de Base de Datos para UsingADD SCHEMATRANDATA

Oracle recomienda encarecidamente poner la base de datos de origen en el modo de registro forzado y activar el registro complementario mínimo en el nivel de base de datos al utilizar Oracle GoldenGate. Esto agrega información de encadenamiento, si la hay, en el redo log para las operaciones de actualización.

Consideraciones adicionales para UsingADD SCHEMATRANDATA

Sintaxis

ADD SCHEMATRANDATA schema
{
[ALLOWNONVALIDATEDKEYS]
[NOSCHEDULINGCOLS | ALLCOLS]}
[NOVALIDATE]
[PARTIALJSON]
[PREPARECSN  {WAIT | LOCK | NOWAIT | NONE}]

schema

Esquema para el que desea que se registre la información de clave complementaria. No utilice un comodín. Para emitir ADD SCHEMATRANDATA para los esquemas de varias bases de datos de contenedor multiinquilino, conéctese a cada base de Datos de conexión por separado con DBLOGIN y emita ADD SCHEMATRANDATA. Desde el contratista raíz, puede agregar schematrandata con el prefijo de contenedor ADD SCHEMATRANDATA [pdb_name].schema

Si ejecuta el comando desde cdb$root, asegúrese también de configurar el siguiente privilegio del usuario en la base de datos:

ALTER USER userID SET CONTAINER_DATA = ALL  CONTAINER = CURRENT;

ALLOWNONVALIDATEDKEYS

Incluye las claves primarias NON VALIDATED y NOT VALID en el registro complementario. Estas claves sustituyen los criterios de selección de clave normales que utiliza Oracle GoldenGate. Si se está utilizando el parámetro GLOBALS ALLOWNONVALIDATEDKEYS, ADD SCHEMATRANDATA se ejecuta con ALLOWNONVALIDATEDKEYS tanto si se ha especificado como si no. Por defecto, no se registran las claves primarias NON VALIDATED y NOT VALID. Consulte el parámetro GLOBALS de ALLOWNONVALIDATEDKEYS.

NOSCHEDULINGCOLS | ALLCOLS

Estas opciones controlan el registro complementario para una base de datos de destino de Oracle. Puede utilizar estas opciones juntas, sin embargo, se utilizaría la segunda opción. Por ejemplo, con el comando ADD SCHEMATRANDATA oggadm_ext ALLCOL NOSCHEDULINGCOLS se utilizaría la opción NOSCHEDULINGCOLS.

NOSCHEDULINGCOLS

Desactiva el registro de columnas de programación. Por defecto, ADD SCHEMATRANDATA activa el registro incondicional de la clave primaria y el registro complementario condicional de todas la claves únicas y las claves ajenas de todas la tablas actuales y futuras en el esquema especificado. El registro incondicional fuerza los valores de la clave primaria en el registro tanto si se ha cambiado como si no la clave en la operación actual. El registro condicional registra todos los valores de columna de una clave ajena o única si se ha cambiado al menos una de ellas en la operación actual. La clave primaria, las claves únicas y las claves ajenas del Replicat integrado deben estar todas disponibles en el servidor entrante para calcular las dependencias.

Si desea activar auto_capture, no utilice esta opción. Esto permitirá que se capturen automáticamente las tablas en este esquema a menos que la tabla se excluya/desactive de forma explícita para su replicación (por ejemplo, mediante TABLEEXCLUDE, DELETE TRANDATA o ALTER TABLE DISABLE LOGICAL REPLICATION DDL).

ALLCOLS

Activa el registro complementario incondicional de todas las columnas de clave y no de clave soportadas para todas las tablas actuales y futuras en el esquema especificado. Esta opción activa el registro de las claves necesarias para calcular las dependencias, además de las columnas que son necesarias para el filtrado, la resolución de conflictos u otros fines. Las columnas LOB, LONG y ADT no están incluidas.

NOVALIDATE

Válido para todas las bases de datos soportadas por ADD SCHEMATRANDATA.

Suprimir la información adicional sobre la tabla que se está gestionando y que está procesando ADD SCHEMATRANDATA. Por defecto, esta opción está activada. Con el procesamiento de información adicional se produce un lapso de tiempo en la respuesta del comando, por lo que esta opción se puede usar para aumentar el tiempo de respuesta.

PARTIALJSON

Válido para Oracle.

Recupera las actualizaciones parciales de JSON en el nivel de esquema. Si está activado, redo incluirá los registros de JSON parciales.

Consulte también el parámetro TRANLOGOPTIONS FETCHPARTIALJSON.

PREPARECSN {WAIT | LOCK | NOWAIT | NONE}

Válido para Oracle tanto para DML como para DDL.

Prepara las tablas automáticamente en el origen de modo que el archivo de volcado de Export del pump de datos de Oracle incluirá los CSN de instanciación. Replicat utiliza el CSN de instanciación por tabla definido por el pump de datos de Oracle (en la importación) para filtrar los registros de pista. En el destino, la importación de la bomba de datos rellena las tablas y las vistas del sistema con SCN de instanciación utilizando el parámetro DBOPTIONS ENABLE_INSTANTIATION_FILTERING para activar la creación de filtros de instanciación en la tabla.

WAIT

Espere a las transacciones en curso y prepare la instanciación de la tabla.

LOCK

Coloque un bloqueo en la tabla (para prepararla para la instanciación de la tabla).

NOWAIT

Comportamiento por defecto, la preparación para la instanciación se realiza inmediatamente.

NONE

No se produce ninguna preparación de la instanciación.

Ejemplo


En el siguiente ejemplo se activa un registro complementario para el esquema hr.

ADD SCHEMATRANDATA hr

En el siguiente ejemplo se registran todas las columnas de clave y no de claves soportadas para todas las tablas actuales y futuras en el esquema denominado hr.

ADD SCHEMATRANDATA hr ALLCOLS

En el siguiente ejemplo se suprime el procesamiento de la información de tabla adicional.

ADD SCHEMATRANDATA hr NOVALIDATE