OPCIONES DE BD
Válido para
Extraer y Replicat
Descripción
Utilice el parámetro DBOPTIONS para especificar las opciones de base de datos. Es un parámetro global, que se aplica a todas las sentencias TABLE o MAP del archivo del parámetro. Algunas opciones para los parámetros DBOPTIONS solo se aplican a Extract o Replicat.
El parámetro DBOPTIONS se puede colocar en cualquier lugar del archivo de parámetros, independientemente de otros parámetros.
Valor por defecto
Ninguno
Sintaxis
DBOPTIONS
[ALLOWLOBDATATRUNCATE | NOALLOWLOBDATATRUNCATE]
[ALLOWUNUSEDCOLUMN | NOALLOWUNUSEDCOLUMN]
[ALLOWNONSTANDARDINTERVALDATA]
[BINDCHARFORBITASCHAR]
[CATALOGCONNECT | NOCATALOGCONNECT]
[CONNECTIONPORT <port>]
[DECRYPTPASSWORD <shared_secret> ENCRYPTKEY {DEFAULT | <key_name>}]
[DEFERREFCONST][DELETE_CHECKPOINT_RECS]
[DISABLECOMMITNOWAIT]
[DISABLELOBCACHING]
[ENABLE_INSTANTIATION_FILTERING]
[EMPTYLOBSTRING '<string>']
[FETCHBATCHSIZE <records>]
[FETCHCHECKFREQ <seconds>]
[FETCHLOBS | NOFETCHLOBS]
[FETCHRETRYCOUNT <number>]
[FETCHTIMEOUT <seconds> | NOFECHTIMEOUT]
[FORCE_XML_ESCAPE_CONVERSION]
[HOST *{<DNS_name> | <IP_address>}*]
[INTEGRATEDPARAMS(<parameter>[, ...])]
[LIMITROWS | NOLIMITROWS]
[LOBBUFSIZE <bytes>]
[LOBWRITESIZE <bytes>]
[MAXLOBKEYLEN <datalength>]
[SESSIONPOOLMAX <max_value> |
[SESSIONPOOLMIN <min_value>][SESSIONPOOLINCR <increment_value>]
[SETTAG [<tag_value> | NULL] ]
[SHOWINFOMESSAGES]
[SHOWWARNINGS]
[SKIPTEMPLOB | NOSKIPTEMPLOB]
[SOURCE_DB_NAME <src_dbase>_<global_name>][SPTHREAD | NOSPTHREAD]
[SQLMODE]
[SUPPRESSTEMPORALUPDATES]
[SUPPRESSTRIGGERS | NOSUPPRESSTRIGGERS]
[TDSPACKETSIZE <bytes>]
[TRANSNAME <trans_name>][USEDATABASEENCODING]
[XMLBUFSIZE <bytes>]
ALLOWLOBDATATRUNCATE |
NOALLOWLOBDATATRUNCATE |
Válido para Replicat para Db2 LUW y MySQL. ALLOWLOBDATATRUNCATE evita que Replicat finalice de forma anormal cuando los datos LOB replicados son demasiado grandes para una columna CHAR, VARCHAR, BINARY o VARBINARY de destino y se aplican solo a las columnas LOB de destino. o a la replicación de Db2 LUW, ALLOWLOBDATATRUNCATE evita que Replicat finalice de forma anormal cuando los datos LOB replicados son demasiado grandes para una columna LOB de destino. Los datos LOB se truncan al tamaño máximo de la columna de destino sin más mensajes de error ni advertencias.
NOALLOWLOBDATATRUNCATE es el valor por defecto y hace que Replicat finalice de forma anormal con un mensaje de error si el LOB replicado es demasiado grande.
ALLOWUNUSEDCOLUMN |
NOALLOWUNUSEDCOLUMN |
Válido para Extract para Oracle. Controla si Extract finaliza de forma anormal cuando encuentra una tabla con una columna no utilizada.
El valor por defecto es ALLOWUNUSEDCOLUMN. Cuando Extract encuentra una tabla con una columna no utilizada, continúa el procesamiento y genera un valor warning.When con este parámetro, debe existir la misma columna no utilizada en el destino o se debe especificar un archivo de definiciones de origen para la tabla en Replicat, para que se pueda realizar la asignación de metadatos correcta.
NOALLOWUNUSEDCOLUMN hace que Extract finalice de forma anormal en las columnas no utilizadas.
ALLOWNONSTANDARDINTERVALDATA
Válido para PostgreSQL.
Utilice DBOPTIONS ALLOWNONSTANDARDINTERVALDATA en el archivo de parámetros Extract para capturar los datos de intervalo de signo mixto (o cualquier otro formato de datos de intervalo, que no está soportado por Oracle GoldenGate) como cadena (no como datos de intervalo estándar). Cuando se utiliza esta opción, el formato de los datos de intervalo que se escriben en la pista y se aplican a la columna CHAR de destino es el siguiente:
year-component-sign years-months days-component-sign days hour-component-sign hours:minutes:seconds.fractional_seconds
Por ejemplo, +1026-9 +0 +0:0: 22.000000 se debe interpretar como 1026 años 9 meses 0 días 0 horas 0 minutos 22 segundos. -0-0 -0 -8 se debe interpretar como 0 años 0 meses 0 días -8 horas. +1-3 +0 +3:20 se debe interpretar como 1 año 3 meses 0 días 3 horas 20 minutos.
En el caso de Replicat, si los datos del intervalo de origen se han capturado mediante DBOPTIONS ALLOWNONSTANDARDINTERVALDATA y se han escrito como una cadena en la pista, la columna de origen correspondiente se puede asignar a una columna de tipo char o binary en el destino.
BINDCHARFORBITASCHAR
Válido para DEFGEN, Extract y Replicat para Db2 para i. Permite que las columnas definidas como CHAR o VARCHAR con CCSID 65535, o CHAR y VARCHAR FOR BIT DATA se traten como si el campo tuviera una codificación convertible normal. La codificación se selecciona del trabajo CCSID. Cuando esta opción está en vigor, DEFGEN no indica que el campo sea binario en el archivo defs.
CATALOGCONNECT |
NOCATALOGCONNECT |
Válido para Extract y Replicat para bases de datos ODBC.
Por defecto, Oracle GoldenGate crea una nueva conexión para las consultas de catálogo, pero puede utilizar NOCATALOGCONNECT para evitarlo.
CONNECTIONPORT <port>
Válido para Replicat para varios daemon MySQL. Especifica el puerto TCP/IP de la instancia a la que se debe conectar Replicat. El valor mínimo es 1 y el valor por defecto es 3306.
DEFERREFCONST |
NODEFERREFCONST |
Válido para Replicat no integrado para Oracle. Opción por defecto para Replicat integrado paralelo.
Define restricciones en DEFERRABLE para retrasar la comprobación y aplicación de restricciones de integridad referencial en cascada y actualización en cascada por parte de la base Oracle destino hasta que se confirma la transacción Replicat. En ese momento, si hay violaciones de restricción, se genera un error. Integrated Replicat no requiere desactivar las restricciones referenciales en el sistema de destino.
Puede utilizar DEFERREFCONST en lugar de desactivar las restricciones en las tablas de destino o definirlas en DEFERRED. Cuando se utiliza, DEFERREFCONST difiere las restricciones DEFERABLE y NOT DEFERABLE. DEFERREFCONST se aplica a todas las transacciones procesadas por Replicat. El parámetro DEFERREFCONST funciona en 11.2.0.2 y versiones posteriores de Oracle.
Si se utiliza con una versión de Oracle AI Database que no soporta esta funcionalidad, DEFERREFCONST se ignora sin devolver una notificación al log de Oracle GoldenGate. Para manejar errores en la operación de confirmación, puede utilizar REPERROR en el nivel raíz del archivo de parámetros y especificar la opción TRANSDISCARD o TRANSEXCEPTION. Nota: No utilizar con Replicat coordinado DEFERREFCONST porque no hay forma de garantizar que las filas relacionadas de las tablas principal y secundaria se procesen mediante el mismo thread
El paralelo DBOPTIONS DEFERREFCONST solo se agregará a la configuración de Replicat cuando defina GOLDENGATESETTIGS_REPLICATIONMODE=PARALLEL_NON_INTEGRATED en el archivo de respuesta (.rsp).
Utilice la opción NODEFERREFCONST para desactivar la opción DEFERREFCONST.
DELETE_CHECKPOINT_RECS
Válido para Parallel Replicat para MySQL.
Utilice la opción DBOPTIONS_DELETE_CHECKPOINT_RECS para sustituir el método por defecto de truncamiento de tablas de puntos de control por la cláusula "DELETE FROM" para limpiar las tablas de puntos de control en Parallel Replicat. Ayuda a evitar bloqueos de metadatos que pueden producirse en Parallel Replicat durante las operaciones de truncamiento por defecto.
DISABLECOMMITNOWAIT
Válido para el Replicat para Oracle.
Desactiva el uso de COMMIT asíncrono por referencia de Replicat. Una sentencia COMMIT asíncrona incluye la opción NOWAIT.
Cuando se utiliza DISABLECOMMITNOWAIT, Replicat emite un COMMIT síncrono estándar (COMMIT con la opción WAIT).
DISABLELOBCACHING
Válido para Replicat no integrado para Oracle.
Desactiva el mecanismo de almacenamiento en caché LOB de Oracle. Por defecto, Replicat activa el mecanismo de almacenamiento en caché LOB de Oracle.
ENABLE_INSTANTIATION_FILTERING
Válido para Oracle.
Activa el filtrado CSN automático por instanciación de tabla en las tablas instanciadas mediante el comando SET_INSTANTIATION_CSN.
SOURCE_DB_NAME es obligatorio si los objetos de Oracle AQ (Advanced Queuing) se incluyen en la replicación y la replicación de procedimiento está activada.
FETCHBATCHSIZE <records>
Válido para Extract para Oracle, Db2 para i, Db2 z/OS, PostgreSQL y SQL Server.
Permite recuperaciones de matriz para cargas iniciales para mejorar el rendimiento, en lugar de una fila a la vez. Se utiliza para la extracción de carga inicial.
Los valores válidos para Oracle, Db2 para i, Db2 z/OS y SQL Server son de 0 a 1000000 registros por recuperación. Los valores válidos para Db2 LUW son de 1 a 1000000 registros por recuperación; cero (0) no es un valor válido.
El valor por defecto es
- El rendimiento se ralentiza cuando el tamaño del lote es muy pequeño o muy grande. Si la tabla contiene datos
LOB, Extract vuelve al modo de recuperación de una sola fila y, a continuación, reanuda el modo de recuperación por lotes.
FETCHCHECKFREQ <seconds>
Válido para Extract integrado para Oracle.
Especifica el número de segundos que espera Extract entre cada comprobación de recuperación para que ADG se recupere. Un número bajo mejora la latencia, aunque aumenta el número de consultas de current_scn from v$database. El valor por defecto es 3 segundos; el máximo es 120 segundos.
FETCHLOBS |
NOFETCHLOBS |
Válido para Extract para Db2 para z/OS y Db2 para LUW.
Suprime la recuperación de LOB directamente de la tabla de base de datos cuando las opciones LOB de la tabla se definen en NOT LOGGED. Con NOT LOGGED, el valor de la columna no está disponible en los logs de transacciones y solo se puede obtener de la propia tabla. Por defecto, Oracle GoldenGate captura los cambios en los LOB de los logs de transacciones. El valor por defecto es FETCHLOBS.
FETCHRETRYCOUNT <number>
Válido para Extract para Oracle.
Especifica el número de veces que Extract intenta antes de informar el progreso de ADG o el motivo de que no haya progreso al esperar a que ADG se recupere. Este valor se multiplica por FETCHCHECKFREQ para determinar aproximadamente la frecuencia con la que se informa el progreso de ADG. El valor por defecto para FETCHRETRYCOUNT es 5 y el rango de valores válido es de 0 a 1000.
FETCHTIMEOUT <seconds> | NOFETCHTIMEOUT
Válido para Extract para Oracle.
Especifica el número de segundos que esperará Extract, tras los cuales finalizará de forma anormal cuando ADG no progrese. Ningún progreso puede deberse a que el MRP no se está ejecutando o a que no está aplicando cambios de redo. Cuando esto ocurra, se debe examinar la base de datos de ADG. El valor por defecto es 30 segundos; los valores válidos son de 0 a 4294967295 (valor máximo ub4) segundos. NOFETCHTIMEOUT significa que nunca se ha producido un timeout (igual que FETCHTIMEOUT 0) y no se pueden especificar segundos con él.
FORCE_XML_ESCAPE_CONVERSION
Para los formatos de fuente de pista de Oracle GoldenGate19c, si FORCE_XML_ESCAPE_CONVERSION está activado, Replicat introducirá un escape de los caracteres de fuente de línea para los tipos de caracteres en las columnas ANYDATA. Si este parámetro está activado para un archivo de pista con un formato 19.1 o superior, se ignora porque Extract ya realiza el escape de alimentación de línea.
Este parámetro solo afecta a las columnas ANYDATA cuando NOUSENATIVEOBJSUPPORT está activado para Extract. Nota: Esta opción de parámetro no afecta a las columnas ANYDATA recuperadas de la base de datos por Logminer en modo nativo.
HOST <{DNS_name | IP_address}>
Válido para Replicat para varios daemon MySQL.
Especifica el nombre DNS o la dirección IP del sistema que aloja la instancia a la que se debe conectar Replicat.
INTEGRATEDPARAMS(<parameter>[, ...])
Válido para Integrated Replicat para Oracle.
Transfiere los parámetros que controlan el servidor entrante de la base de datos en la Oracle AI Database de destino.
Puede utilizar la opción commit_serialization con INTEGRATEDPARAMS para Replicat integrado, pero no para Replicat paralelo en modo integrado. La definición de parámetros de base de datos interna para Extract se realiza mediante TRANLOGOPTIONS INTEGRATEDPARAMS.
Para obtener más información sobre Integrated Replicat y una lista de parámetros de servidor entrante soportados, consulte Opciones de parámetros adicionales para Integrated Replicat y Parallel Replicat en modo integrado en la documentación de microservicios de Oracle GoldenGate.
LIMITROWS |
NOLIMITROWS |
Válido para Replicat para MariaDB, MySQL, Oracle, SingleStore, SQL Server, Sybase y TimesTen.
LIMITROWS impide que varias filas se actualicen o supriman con la misma sentencia SQL Replicat cuando la tabla de destino no tiene una clave primaria o única.
LIMITROWS es el valor por defecto. LIMITROWS y NOLIMITROWS se aplican globalmente a todas las sentencias MAP de un archivo de parámetros.
Para MySQL, LIMITROWS utiliza una cláusula LIMIT 1 en la sentencia UPDATE o DELETE.
Para los destinos de Oracle, se debe utilizar LIMITROWS (valor por defecto). Utiliza WHERE ROWNUM = 1 o AND ROWNUM = 1 en la cláusula WHERE.
Para SQL Server, LIMITROWS utiliza una cláusula SET ROWCOUNT 1 antes de la sentencia UPDATE o DELETE.
NOLIMITROWS permite que la misma sentencia SQL de Replicat actualice o suprima varias filas.
LOBBUFSIZE <bytes>
Válido para Extract para Db2 LUW, Db2 para i, Db2 z/OS, Oracle, PostgreSQL y SQL Server.
Para Oracle, determina el tamaño de buffer de memoria en bytes que asignar para cada atributo LOB embebido que esté en un tipo de objeto Oracle.
Para las bases de datos que no son de Oracle, especifica el tamaño del buffer para recuperar los datos LOB durante la carga inicial.
Los valores válidos van de 1024 y 104857600 bytes. El valor por defecto es 1048576 bytes.
Para Oracle, si la longitud del LOB embebido supera el tamaño de LOBBUFSIZE especificado, se genera un mensaje de error similar al siguiente:
GGS ERROR ZZ-0L3 Buffer overflow, needed: 2048, allocated:
1024.
LOBWRITESIZE <bytes>
Válido para Replicat no integrado para Oracle.
Especifica un tamaño de fragmento en bytes para cada LOB que Replicat escribe en la base de datos de destino. Los datos LOB se almacenan en un buffer hasta que se alcanza este tamaño. Debido a que los LOB se deben escribir en la base de datos en fragmentos, la escritura en bloques más grandes evita el exceso de E/S. Cuanto mayor sea el valor, menos llamadas de E/S realizará Replicat en el servidor de base de datos para escribir todo el LOB en la base de datos.
Especifique un múltiplo del tamaño de fragmento de LOB de Oracle. Un valor determinado se redondeará a un múltiplo del tamaño de fragmento LOB de Oracle, si es necesario. El tamaño de escritura LOB por defecto es 32k si se especifica DBOPTIONS NOSKIPTEMPLOB o 1 MB si se especifica DBOPTIONS SKIPTEMPLOB. Los valores válidos van de 2.048 bytes a 2.097.152 bytes (2MB).
Por defecto, Replicat activa el mecanismo de almacenamiento en caché LOB de Oracle. Para desactivar el almacenamiento en caché LOB de Oracle, utilice la opción DISABLELOBCACHING de DBOPTIONS.
MAXLOBKEYLEN <datalength>
Válido para Extract para PostgreSQL.
Define las columnas de tipo de dato LOB que se van a procesar como parte de la clave. Los valores válidos del parámetro datalength pueden ser de 1 a 8000. Los LOB que pueden formar parte de la clave son:
-
Bytea -
Char -
Citext -
Text -
Varchar
SESSIONPOOLMAX <max_value>
Válido para Extract en modo integrado para Oracle.
Define un valor máximo para el número de sesiones en el pool de sesión de OCI, que utiliza Extract para recuperar de una base de datos del contenedor. El valor por defecto es 10 sesiones. Se debe especificar antes del parámetro USERIDALIAS; de lo contrario, se ignorará y se utilizará el valor por defecto.
SESSIONPOOLMIN <min_value>
Válido para Extract en modo integrado para Oracle.
Define un valor mínimo para el número de sesiones en el pool de sesión de OCI, que utiliza Extract para recuperar de una base de datos del contenedor. El valor por defecto es 2 sesiones. Se debe especificar antes del parámetro USERIDALIAS; de lo contrario, se ignorará y se utilizará el valor por defecto.
SESSIONPOOLINCR <increment_value>
Válido para Extract en modo integrado para Oracle.
Define un valor para el número de sesiones incrementales que se pueden agregar al grupo de sesiones de OCI, que utiliza Extract para recuperar de una base de datos del contenedor. El valor por defecto es 2 sesiones. Se debe especificar antes del parámetro USERIDALIAS; de lo contrario, se ignorará y se utilizará el valor por defecto.
SETTAG [<tag_value> | NULL
Válido para el Replicat para Oracle.
Define el valor de una etiqueta de redo de Oracle que se utilizará para identificar las transacciones del Replicat asociado en el redo log. Una etiqueta de redo también se puede utilizar para identificar transacciones distintas de las de Replicat. Este parámetro se recomienda en EXCLUDEUSER y TRACETABLE.
Utilice esta opción para evitar el ciclo (retorno) de Replicat de los registros individuales en una configuración bidireccional o para filtrar otras transacciones de la captura. El valor SETTAG por defecto es 00 y está limitado a 2K bytes. Un valor válido es cualquier etiqueta única de Oracle Streams. Un valor de etiqueta puede tener hasta 2000 dígitos hexadecimales (0-9 A-F) de longitud.
Las transacciones en el redo marcadas con la etiqueta especificada se pueden filtrar mediante un Extract que tenga el parámetro TRANLOGOPTIONS con la opción EXCLUDETAG definida en <tag_value>. Utilice el filtrado basado en etiquetas para evitar el ciclo (retorno) de las transacciones de Replicat en una configuración bidireccional o para filtrar otras transacciones para que no se capturen. Para obtener más información, consulte TRANLOGOPTIONS.
Puede desactivar el etiquetado de DDL mediante el parámetro [DDLOPTIONS](ddloptions.html#GUID-E316EFCB-862D-4055-8B8E-C48EC82F2DDE) con la opción NOTAG.
<hex_value>
Valor hexadecimal de 0 a F. El valor predeterminado es 00. Los siguientes son ejemplos válidos:
DBOPTIONS SETTAG 00112233445566778899AABBCCDDEEFF
DBOPTIONS SETTAG 00112233445566778899aabbccddeeff
DBOPTIONS SETTAG 123
NULL
Desactiva el filtrado basado en etiquetas para el Replicat asociado.
SKIPTEMPLOB |
NOSKIPTEMPLOB |
Válido para Replicat para las versiones 11g y 12c de Oracle Database. Controla cómo se aplican los LOB a una base de datos Oracle de destino. El valor por defecto es SKIPTEMPLOB .
SKIPTEMPLOB mejora el rendimiento escribiendo directamente los datos LOB en la columna LOB de destino. Replicat crea una sentencia SQL con un valor LOB vacío y devuelve el localizador LOB a la variable de enlace. Después de que la sentencia SQL se ejecute correctamente, los datos LOB se escriben directamente en la columna LOB mediante el localizador LOB devuelto.
NOSKIPTEMPLOB utiliza un LOB temporal en la sentencia SQL. Replicat declara una variable de enlace en la sentencia SQL y asocia un LOB temporal y, a continuación, escribe en el LOB temporal. Oracle AI Database aplica los datos de la columna LOB del LOB temporal.
SKIPTEMPLOB se aplica a las operaciones INSERT y UPDATE que contienen datos LOB. No se aplica si la tabla tiene un índice funcional con una columna LOB, si los datos LOB son NULL, están vacíos o se almacenan en línea. No se aplica a operaciones LOB parciales.
SKIPTEMPLOB hace que Replicat genere/realice 1 operaciones DML+ n LOB_WRITE (por pieza) al actualizar/insertar una fila con columnas LOB. Sin embargo, SKIPTEMPLOB no se debe utilizar con FETCHPARTIALLOB (parámetro de Extract) porque da como resultado una recuperación excesiva.
NOSKIPTEMPLOB se proporciona para la compatibilidad con versiones anteriores; de lo contrario, se debe mantener el valor por defecto de SKIPTEMPLOB.
SOURCE_DB_NAME <src_dbase>_<global_name>
Válido para Oracle.
Indica el nombre global de la base de datos origen de pista. Se utiliza para consultar la información de instanciación relevante cuando DBOPTIONS ENABLE_INSTANTIATION_FILTERING está activado. Esta opción es opcional para el filtrado de instancias en un archivo de pista 12.2 con metadatos activados.
Cuando el origen no tiene DOMAIN, no especifique un DOMAIN para la base de datos descendente.
La opción SOURCE_DB_NAME es obligatoria si los objetos de Oracle AQ (Advanced Queuing) se incluyen en la replicación y la replicación de procedimiento se ha activado. Vea el siguiente ejemplo:
DBOPTIONS SOURCE_DB_NAME CDB1_PDB1.NORTH.COM
SPTHREAD |
NOSPTHREAD |
Válido para Extraer y Replicat. No válido para Oracle y MySQL.
Crea un thread de conexión a base de datos independiente para utilizar SQLEXEC para ejecutar procedimientos almacenados. El valor por defecto es NOSPTHREAD.
SQLMODE
Con esta opción activada, la variable sql_mode se define en 'ANSI_QUOTES' (set sql_mode = 'ANSI_QUOTES'). Trate las comillas dobles (") como un carácter de comillas de identificador (como el carácter de comillas `) y no como un carácter de comillas de cadena. Aún puede utilizar ` para indicar los identificadores con este modo activado. Con ANSI_QUOTES activado, no puede utilizar comillas dobles (") para citar cadenas literales porque se interpreta como un identificador.
Para obtener más información, consulte Modos SQL del Servidor.
SUPPRESSTEMPORALUPDATES
Válido para Db2 LUW 10.1 FixPack 2 y una replicación superior de la tabla temporal.
Utilice SUPPRESSTEMPORALUPDATES para replicar las tablas de punto de sistema y bitemporal junto con las tablas de historial asociadas. Oracle GoldenGate replica las columnas de inicio de fila, fin de fila e ID de inicio de transacción junto con las demás columnas de la tabla. Debe asegurarse de que la instancia de base de datos tiene el permiso de ejecución para ejecutar el procedimiento almacenado SYSPROC.SET_MAINT_MODE_RECORD_NO_TEMPORALHISTORY¿ en el lado de aplicación.
Por defecto, Oracle GoldenGate no replica las columnas de inicio de fila, fin de fila e ID de inicio de transacción. Para conservar los valores originales de estas columnas, implemente una de las siguientes opciones.
-
Agregue columnas de registro de hora adicionales en la tabla temporal de destino y asigne las columnas según corresponda.
-
Utilice una tabla no temporal en el lado de aplicación y asigne las columnas según corresponda.
Replicación en entornos que no son de Oracle:
En entornos que no sean de Oracle en los que no haya tablas temporales en el lado de aplicación, debe definir el valor de las columnas de inicio de fila, fin de fila e ID de inicio de transacción. Estas columnas de origen tendrán valores de registro de hora que puede que la base de datos de destino no soporte. En primer lugar, debe utilizar las funciones de conversión de mapas para convertir estos valores en el formato que soporta la base de datos de destino y, a continuación, asignar las columnas según corresponda. Por ejemplo, MySQL tiene un rango DATETIME de 1000-01-01 00:00:00.000000' to '9999-12-31 23:59:59.999999¿'. You cannot replicate a Db2 LUW timestamp value of 0001-01-01-00.00.00.000000000000¿ a MySQL. Para replicar estos valores, debe convertir este valor en el formato MySQL DATETIME. Por ejemplo, si una tabla de punto de sistema o bitemporal tiene la siguiente columna de registro de hora:
SYS_START
--------------------------------
0001-01-01-00.00.00.000000000000
A continuación, para replicar esta columna en MySQL, debe utilizar la función colmap() de la siguiente forma:
map <source_schema>.<source_table>, target <target_schema>.<target_table>
colmap(sys_start= @IF( ( @NUMSTR( @STREXT(sys_start,1,4))) > 1000, sys_start,
'1000-01-01 00.00.00.000000'));
Carga inicial de tabla temporal:
Oracle GoldenGate soporta la carga inicial de la tabla temporal como de costumbre.
Tenga en cuenta las siguientes consideraciones con la tabla temporal:
-
La replicación entre el período del sistema y la tabla temporal de período de aplicación no está soportada.
-
La replicación de una tabla no temporal a una tabla temporal no está soportada.
-
No se soporta la replicación del período del sistema, las tablas bi-temporales y
SUPPRESSTEMPORALUPDATEScon el parámetroINSERTALLRECORDS. -
Si se crea algún índice único para la tabla temporal de período de aplicación que utilice
BUSINESS_TIME WITHOUT OVERLAPSpara la tabla de destino, se debe crear el mismo índice único para la tabla de origen. -
La replicación bidireccional entre tablas temporales solo se recomienda con el valor por defecto.
-
CDR solo está soportado con
SUPPRESSTEMPORALUPDATES. No hay soporte de CDR en la replicación bidireccional. -
Por defecto, hay inconsistencias en las columnas de inicio de fila, fin de fila e ID de inicio de transacción de las tablas temporales cuando las bases de datos de origen y destino funcionan con diferentes zonas horarias. Estas columnas de registro de hora de las tablas system-period y bitemporal se rellenan automáticamente por los gestores de base de datos respectivos y tendrán valores según las zonas horarias respectivas de las bases de datos.
-
El uso del valor por defecto con
GETUPDATEBEFORESestá en el archivo de parámetros de replicación, no puede utilizar las columnas de inicio de fila, fin de fila e ID de inicio de transacción en ningún cálculo delta. Por ejemplo, no es posible tomar la imagen antes y después de dichas columnas en ningún tipo de cálculo. Estas columnas se pueden utilizar en cálculos delta medianteSUPPRESSTEMPORALUPDATES.
SUPPRESSTRIGGERS |
NOSUPPRESSTRIGGERS |
Válido para Integrated Replicat y Classic Replicat para Oracle.
Controla si se arrancan o no disparadores durante la sesión de Replicat. Proporciona una alternativa a la desactivación manual de disparadores. (Integrated Replicat no necesita desactivar los disparadores en el sistema de destino).
SUPPRESSTRIGGERS es el valor por defecto y evita que se disparen disparadores en los objetos de destino configurados para la replicación con Oracle GoldenGate. SUPPRESSTRIGGERS es válido para Oracle Database 12c, 11g (11.2.0.2) y versiones posteriores de 11g R2. SUPPRESSTRIGGERS no es válido para 11g R1.
Para permitir el arranque de un disparador específico, puede utilizar la siguiente sentencia SQLEXEC en el archivo de parámetros Replicat, donde <trigger_owner> es el propietario del disparador y <trigger_name> es el nombre del disparador.
SQLEXEC 'DBMS_DDL.SET_TRIGGER_FIRING_PROPERTY('"S1"','"MY_TRIGGER"',FALSE);'
Nota: Una vez que se ejecute SQLEXEC con FALSE, el disparador seguirá disparándose hasta que el comando se vuelva a ejecutar con un valor de TRUE.
NOSUPPRESSTRIGGERS permite que se arranquen los disparadores de destino. Para utilizar [NO]SUPPRESSTRIGGERS, el usuario de Replicat debe tener los privilegios otorgados mediante el rol de usuario OGG_APPLY disponible en Oracle AI Database 26ai y versiones posteriores o el paquete dbms_goldengate_auth.grant_admin_privilege para Oracle Database 21c y versiones posteriores. Este procedimiento forma parte de la instalación de Oracle AI Database. Consulte la documentación de la base de datos para más información.
El parámetro USERIDALIAS debe preceder a una sentencia DBOPTIONS que contenga SUPPRESSTRIGGERS o NOSUPPRESSTRIGGERS.
TRANSNAME <trans_name>
Válido para Replicat para SQL Server.
Permite a un Replicat individual utilizar un nombre de transacción específico que se especifica en el archivo de parámetros. <trans_name> es el nombre de la transacción que Replicat utiliza para las transacciones de destino DML y sustituye el nombre de transacción ggs_repl por defecto cuando se utiliza.
USEDATABASEENCODING
Por defecto, Db2 para i Extract convierte todos los datos de texto a UTF-8 para datos que no sean de DBCS y UTF-16 para datos de DBCS. El uso de esta opción hace que Extract almacene todos los datos de texto en la pista en su codificación de caracteres nativa para datos que no sean de DBCS. Actualmente, los datos de DBCS (GRAPHIC/VARGRAPHIC/DBCLOB) se siguen convirtiendo en UTF-16 independientemente de si se proporciona o no este parámetro. Para los valores CCSID no soportados por Oracle GoldenGate, Extract convierte los datos en UTF-8 para los datos que no son de DBCS y en UTF-16 para los datos de DBCS para garantizar la compatibilidad para todos los Replicats.
XMLBUFSIZE <bytes>
Válido para Extract para Oracle.
Define el tamaño del buffer de memoria que almacena los datos XML extraídos del atributo sys.xmltype de un tipo de objeto SDO_GEORASTER. El valor predeterminado es 1048576 bytes (1MB). Si los datos superan el tamaño de buffer por defecto, Extract finalizará de forma anormal. Si esto ocurre, aumente el tamaño del buffer y vuelva a iniciar Extract. El rango válido de valores es de 1024 a 104857600 bytes.
Ejemplos
Ejemplo 1
DBOPTIONS HOST 127.0.0.1, CONNECTIONPORT 3307
Ejemplo 2
DBOPTIONS DECRYPTPASSWORD AACAAAAAAAAAAAIALCKDZIRHOJBHOJUH ENCRYPTKEY DEFAULT
Ejemplo 3
DBOPTIONS TDSPACKETSIZE 2048
Ejemplo 4
DBOPTIONS FETCHBATCHSIZE 2000
Ejemplo 5
DBOOPTION XMLBUFSIZE 2097152