Cualificación de Nombres de Objetos de Base de Datos

Los nombres de objeto deben estar completos en el archivo de parámetros. Esto significa que se deben cualificar todas las especificaciones de nombre, no solo las que se proporcionan como entrada a la sintaxis de parámetros de Oracle GoldenGate, sino también los nombres de un procedimiento SQL o consulta que se proporciona como entrada SQLEXEC, los nombres de la entrada de salida de usuario y todas las demás entradas proporcionadas en el archivo de parámetros.

Oracle GoldenGate soporta nombres de objetos de dos y tres partes, según corresponda para la base de datos.

Nombres de dos partes

La mayoría de las bases de datos solo necesitan que se especifiquen nombres de dos partes, con el siguiente formato:

*owner.object*

Por ejemplo: HR.EMP

Dónde:

owner es un esquema o base de datos, según cómo defina la base de datos un espacio de nombres lógico que contenga objetos de base de datos. object es una tabla u otro objeto de base de datos soportado.

Las bases de datos para las que Oracle GoldenGate soporta nombres de dos partes son las siguientes, que se muestran con su convención de nomenclatura de dos partes adecuada:

Nombres de tres partes

Oracle GoldenGate soporta nombres de tres partes para la base de datos de contenedores de Oracle, solo en caso de utilizar un Extract descendente. Sin embargo, Oracle GoldenGate solo soporta extracciones por PDB para Oracle AI Database, en general.

Se necesitan nombres de tres partes para capturar desde una base de datos de contenedor de Oracle de origen porque un grupo de Extract puede capturar desde más de un contenedor. Por lo tanto, el nombre del contenedor, así como el esquema, se deben especificar para cada objeto u objetos en una sentencia TABLE de Extract.

Especifique un nombre de CDB de Oracle de tres partes de la siguiente manera:

*container.schema.object*

Por ejemplo: PDBEAST.HR.EMP

Aplicación de datos de varios contenedores o catálogos

Para aplicar los datos capturados de varios contenedores o catálogos de origen a una base de datos de contenedores de Oracle de destino, se necesitan nombres de tres y dos partes. En la parte MAP de la sentencia MAP, cada objeto de origen debe estar asociado a un contenedor o catálogo, tal como estaba en la sentencia TABLE. Esto le permite (y a Replicat) asignar correctamente datos de varios contenedores o catálogos de origen a los objetos de destino adecuados. Sin embargo, en la parte TARGET de la sentencia MAP, solo se necesitan nombres de dos partes. Esto se debe a que Replicat solo puede conectarse a un contenedor o catálogo de destino a la vez, y schema.owner es un calificador suficiente. Se necesitan varios grupos de Replicat para soportar varios contenedores o catálogos de destino. Especifique el contenedor o catálogo de destino con el parámetro TARGETDB.

Especificación de un contenedor o catálogo por defecto

Puede utilizar el parámetro SOURCECATALOG para especificar un catálogo por defecto para cualquier especificación posterior de TABLE, MAP (u SEQUENCE de Oracle) en el archivo de parámetros.

En el siguiente ejemplo se muestra el uso de SOURCECATALOG para especificar la PDB de Oracle por defecto denominada pdbeast para los objetos region y jobs, y la PDB por defecto denominada pdbwest para los objetos appraisal. Los objetos de pdbeast se especifican con un nombre de tres partes totalmente cualificado, que no necesita que se especifique un catálogo por defecto.

TABLE pdbeast.hr.emp*;
SOURCECATALOG pdbeast
TABLE region.country*;
TABLE jobs.desg*;
SOURCECATALOG pdbwest
TABLE appraisal.sal*;