Configuration Variable Reference
Per-process setting
Usually, variables are set globally, for all processes. This is done by specifying no process name, or *.
If the variable value needs to be set different for a process, use SET with a process name, e.g.
SET APPLY.LOG_FILE=/home/oracle/log/%N.%E
SET APPLY.INSTANTIATE_SCN NOWIf the variable needs to be set back to the global "*" setting, use RESET command.
Variables can also be set with MEMORY_SET, which only sets it in memory and not the DDC file. After a restart of the process the setting will no longer take affect (unless MEMORY_SET is specified in the DDC file).
Variable reference
Internal Variable | Description |
|---|---|
APPLY_CASE_CONVERT | When a table is prepared, should the name from MINE be kept as-is, made uppercase, or lowercase? This is honored for case-sensitive databases only (MySQL and MSSQL). |
APPLY_COLUMN_NAMES_MAP | Allows global rename of columns. Translates column names on source database to new column names on target database. This is handy if replicating from one database to another type of database (eg MySQL) where a specific column cannot be used because it is a reserved word. Example: set APPLY_COLUMN_NAMES_MAP PRIMARY=PRIMARY_VALUE This will rename the column PRIMARY to PRIMARY_VALUE on the target database. Multiple columns pairs can be separated with commas: set APPLY_COLUMN_NAMES_MAP PRIMARY=PRIMARY_VALUE, ALTER=ALT |
APPLY_DATABASE | Connection definition for the APPLY database. This is TNS connection string for Oracle, connection string for MySQL or DSN (Data Source Name) for MS SQL. |
APPLY_DATABASE_DBID | DBID (see v$database) of databases where apply connects. The default is empty and the variable is optional; however, it's always set by setup wizard. This helps to check that the connection strings resolve to correct databases as the apply server. |
APPLY_DATE_FORMAT | The output format for dates, timestamps and intervals when using flatfiles. YMD is human-readable like YYYY.MM.DD (+time portion, time zones) or Oracle-like for intervals (+3-2 for year-day). ISO8601 is Java-like 2014-12-05T12:34:56 or P12Y2M.
|
APPLY_FILEOUT_FILE_BATCH_SIZE | The file size for the output file. The file will be closed then this size is reached and the transaction is completed. Values: integer Default: 0 Note that file is closed when we get over this size (and then we complete the transaction). |
APPLY_FILEOUT_FILE_CSV_COMMA | The field separator for CSV output files. Default: (empty) Value: string, with support for escaped chars: \0 \a \b \t \n \v \f \r \x00 (arbitrary hex number ) \\ (backslash) |
APPLY_FILEOUT_FILE_CSV_NEWLINE | The row separator for CSV output files. Default: (empty) Value: string, with support for escaped chars: \0 \a \b \t \n \v \f \r \x00 (arbitrary hex number ) \\ (backslash) |
APPLY_FILEOUT_FILE_FORMAT | The file type for the output file.
|
APPLY_FILEOUT_FILESYSTEM | The type of filesystem to be written to.
|
APPLY_FILEOUT_HDFS_NAMENODE | The namenode of the Hadoop HDFS. This is the standard protocol how HDFS clients connect. Default: localhost:9000 Values: host:port |
APPLY_FILEOUT_STAGING_DIR | The directory where output files are stored while they are in progress. Default: OFF Value: directory + file mask. Wildcards: %O table owner %A table name %C transaction start SCN %I object=table id %X transaction id %N apply process name %T process type (=APPLY) %H thread id %S plog id %D ddc name %E file type (csv/avro) Note that one file can contain multiple transactions. So %C/%X/%H/%S are determined based on first transaction in the file. We recommend to use %C to order the output files and add %X for cases when %C is non-unique. |
APPLY_FILEOUT_TARGET_DIR | The directory where output files are stored when they are completed. Default: OFF Value: directory + file mask. Wildcards: %O table owner %A table name %C transaction start SCN %I object=table id %X transaction id %N apply process name %T process type (=APPLY) %H thread id %S plog id %D ddc name %E file type (csv/avro) Note that one file can contain multiple transactions. So %C/%X/%H/%S are determined based on first transaction in the file. We recommend to use %C to order the output files and add %X for cases when %C is non-unique. |
APPLY_IGNORE_ERROR_CODES | Automatically ignore specified Oracle errors (ORA- ). Values: string (delimited by :) Default: (empty) For example, if there is a parent-child relationship and only the parent table is being replicated because the child table does not exist on target, any foreign key constraints being created on the parent-child relationship will be replicated and will result in an ORA-942 table or view does not exist error because the because the add constraint command doesn't find child table it wants to reference to. Example: APPLY_IGNORE_ERROR_CODES 942 This will make Apply ignore all ORA-00942 error codes. Multiple error codes can be delimited by : Example: APPLY_IGNORE_ERROR_CODES 942:955 This setting requires a restart of the Apply process. |
APPLY_LISTEN_INTERFACE | Network interface on which APPLY listens for commands (hostname:port). |
APPLY_MSSQL_USER_DB | Deprecated. Values: string Default: (empty) |
APPLY_PASSWORD | Encrypted APPLY database password. (Use ENCRYPT command to get encrypted password from the plain text password.) |
APPLY_PEER | What is the corresponding APPLY for this process? If SIMPLE_CONFIG = YES, this is simply set to APPLY. |
APPLY_POSTPONE_LAST_LCR |
If set to YES, then APPLY will postponing the last LCR or SQL until the next SQL for the same object is found. This can sometimes help with (deadlock) locking issues or "APPLY hung" issues. This can also assist if there are killed sessions on the source database and the APPLY is waiting on the detection of the killed process to rollback (or commit). By setting to YES it means that APPLY is always one SQL behind. This means APPLY always keeps one SQL in each open transaction unapplied. It processes the changes it gets from MINE, but stops short of the last one available so far. As soon as APPLY receives the commit, it applies even the last SQL. So there is never any data loss, although it can be noticed that APPLY lags behind MINE until the commit arrives. But this is probably most visible for manual test cases (like insert 10.000 rows and see that 9.999 has been applied) because in production systems there is always some activity from the source (and with commits), so this situation is rarely seen. *The default changed to YES in version 2.8 release only if you rerun the *all.sh script again in 2.8. Otherwise the default will stay NO from the previous run of *all.sh script from 2.5, 2.6, 2.7. The parameter should be changed manually if that is the case. |
APPLY_RDBMS | APPLY database type:
|
APPLY_REMOTE_INTERFACE | Where to connect to reach this APPLY process. This is usually same as APPLY_LISTEN_INTERFACE, but may be changed if the name resolution works differently among the machines, listen binds to selected interfaces only, etc. Note that this settings is used by the console, too. |
APPLY_SET_TRIGGER_FIRE_ONCE | How to make triggers to not fire in APPLY sessions (YES/NO/AUTO).
|
APPLY_SCHEMA | APPLY database schema (Oracle, usually same as APPLY_USER), schema=database (MySQL), database (MS SQL). |
APPLY_SCHEMA2 | APPLY database schema (SQL Server only). |
APPLY_STAGING_DIR | Directory to store received PLOGS on APPLY server. |
APPLY_TRACE | OFF (default) or pattern for trace file name. The trace file contains all SQL applied as well as further debugging info.
Wildcards:
%N apply process name
%S plog sequence
%E file type extension Example: APPLY_TRACE=/home/oracle/d112f/log/trace/%N_%S.%E This requires a restart of the Apply process. |
APPLY_USER | APPLY database login username. |
CHECKVARS | Disable/enable checking of variable values. Can be: ON (default), OFF, or comma-separated list of variables NOT to check. |
DDC_DATABASE_DBID | DBID is the Oracle Database ID that is storing the DDC metadata tables for Dbvisit Replicate. This is checked to make sure that Dbvisit connects to the correct database. Values: string (something that a user would not normally set) |
DDC_BACKUP_DIR | If DDC DB, on every startup of a process a backup of all DDC settings is made into this directory as a backup, e.g. for use with CREATE DDCDB FROM DDCFILE, or just for reference. |
DDC_DATABASE | TNS identifier for the database when the DDC DB is stored. (Setup wizard sets it to MINE database for this by default.) Note that just setting this variable will not create the DDC DB tables, these are contained in every dictionary. |
DDC_ID | Unique id of the DDC. This must not change after configuration is complete. Default: 1. |
DDC_NAME | Name of the configuration (%d in filemask). This can change as you want, as internally only the DDC_ID matters, but beware of all %d references. |
DDC_PASSWORD | Encrypted ddc db database password. (Use ENCRYPT command to get encrypted password from the plain text password.) |
DDC_SCHEMA | DDC database schema, usually same as DDC_USER. |
DDC_USER | DDC DB database login username. |
DDL_IGNORE_USER | Any DDL issued by this user will be ignored. Default: empty. Users are separated by colons. This requires an APPLY restart. |
DDL_REPLICATE_GRANTS | If set to YES all grants on the prepared tables will be replicated to the target database. Default value is NO. |
DEBUG_LEVEL | Set debugging level. This is bit field. Example 2^32-1 means all bits are enabled. Example: DEBUG_LEVEL = 4294967295 Contact support for possible values. |
DELETE_OBSOLETE_PLOGS_AGE | Delete PLOGS after specific time period. Time period can be days (d) or hours(h). Default: 3d |
DELETE_OBSOLETE_PLOGS_SIZE_MB | Delete PLOGS are total size of all PLOGS exceeds size in MB. Default: 1024 |
DELETE_OBSOLETE_PLOGS_GZIP | Compress the PLOGS as soon as they are not needed by Dbvisit Replicate anymore. Default: Yes |
DELETE_OBSOLETE_RLOGS_AGE | Delete the redo logs transferred from FETCHER after specific time period. Time period can be days (d) or hours(h). Default: 3d |
DELETE_OBSOLETE_RLOGS_SIZE_MB | Delete the redo logs transferred from FETCHER after total size of all PLOGS exceeds size in MB. Default: 1024 |
DELETE_OBSOLETE_RLOGS_GZIP | Compress the redo logs transferred from FETCHER as soon as they are not needed by Dbvisit Replicate anymore. Default: Yes |
DISKSPACE_CHECK_BYTE_LIMIT | Sends a email notification as well as a warning message in the log file when free space on the filesystem goes below this threshold. Values: integer Default: 1073741824 (1GB) |
DISPLAY_ALL_OBJECTS_IN_LIST_PROGRESS | Show all objects. By default only tables will be shown.
|
DISPLAY_TABLE_NAME_IN_LIST_PROGRESS | What table name to show when rename is used. The valid values are:
|
DPUMP_EXCLUDE_STATS | When generating the scripts for export this parameter allows the option to exclude or include statistics.
|
DROP_SUPPLEMENTAL_LOG_DATA | Supplemental logging is dropped by default when UNPREPARING tables. If the parameter is set to NO then supplemental logging will remain on the table after the table is unprepared.
|
FETCHER_DATABASE | MINE database TNS (when connecting from FETCHER). |
FETCHER_DATABASE_DBID | DBID (see v$database) of databases where fetcher connects. The default is empty and the variable is optional; however, it's always set by setup wizard. This helps to check that the connection strings resolve to correct databases = the same ones as the fetcher server. |
FETCHER_ENABLED | FETCHER (downstream capture) enabled, this means MINE waits for redologs from FETCHER. |
FETCHER_LISTEN_INTERFACE | Network interface on which FETCHER listens for commands (hostname:port). |
FETCHER_PASSWORD | Encrypted FETCHER database password. (Use ENCRYPT command to get encrypted password from the plain text password.) |
FETCHER_PEER | What is the corresponding FETCHER for this process? If SIMPLE_CONFIG = YES, this is simply set to FETCHER. |
FETCHER_REMOTE_INTERFACE | Where to connect to reach this FETCHER process. This is usually same as FETCHER_LISTEN_INTERFACE, but may be changed if the name resolution works differently among the machines, listen binds to selected interfaces only, etc. Note that this settings is used by the console, too. |
FETCHER_SCHEMA | Schema of MINE repository (when connecting from FETCHER). Virtually always same as MINE_SCHEMA. |
FETCHER_THREADS | On RAC, specify a subset of redo log threads that a particular FETCHER should handle; it is necessary to send all threads to MINE, but it is possible to use multiple FETCHERS. Use "ALL" (default) or colon-separated list of threads (e.g. "1:3:5"). Default: ALL. |
FETCHER_USER | MINE database login username (when connecting from FETCHER). |
IGNORE_APPLY_DDL_DIFFERENCES | Will ignore differences in the table definition (or if it is missing) between source and target during the prepare phase.
|
INSTANTIATE_SCN | Determines where to initiate the replication from. The valid values are:
|
LICENSE_BAR | Show license info and product version in console
|
LICENSE_KEY | License key, as obtained by your purchase. |
LOG_FILE | General process log file location template. |
LOG_FILE_TRACE | General trace file location template. |
LOG_FILE_COUNT | The number of copies of the log that should be kept. The active log will always be called *.log. Once the file is full (see LOG_FILE_SIZE parameter) then a copy of the log will be rotated and saved as *log.1. Any contents saved in *log.1 will be saved as *log.2. The process will continue determined by the value that this parameter is set to. When the default number is reached the last one will be rotated off. |
LOG_FILE_DATE_ROTATE | If not OFF (default), specifies how often rotate the general log files. Allowed values:
Note: The values provided above are CASE SENSITIVE, so make sure you provide the values same as above. |
LOG_FILE_SIZE | Approximate maximum log size in bytes. Once the log exceeds this size the log file will rotate. |
LOG_OBSOLETE_AGE_PLOG | When PLOGS are applied and no longer needed even after APPLY restart, they are eligible for deletion. In addition, they must be at least LOG_OBSOLETE_AGE_PLOG days old. |
LOG_OBSOLETE_AGE_RLOG | When redo logs are mined and no longer needed even after MINE restart, they are eligible for deletion. In addition, they must be at least LOG_OBSOLETE_AGE_PLOG days old. NOTE: this applies only for redolog copies shipped to MINE from FETCHER – if MINE reads them directly, they are left to be managed by database administrator, using RMAN, backup scripts etc. |
LOG_PACKAGE_CSV_MAX_AGE | Limits the amount of data from metadata tables for the support package. Data older than (N) days will not be included. Values: integer (days) Default: 10 |
LOG_PACKAGE_TRC_MAX_AGE | Limits the amount of data from trace files for the support package. Trace files older than (N) days will not be included. Values: integer (days) Default: 30 |
MAILCFG_AUTH_PASSWD |
|
MAILCFG_AUTH_USER |
|
MAILCFG_FROM | The From address to be used in outgoing emails |
MAILCFG_PORT | The SMTP port to be used (default is the usual 25; however, the usual value for SSL-enabled SMTP server is 465). |
MAILCFG_SMTP_SERVER | Sets SMTP mail server to be used for sending emails. |
MAILCFG_USE_SSL | Use SSL protocol for the SMTP server (yes/no, default no). |
MEMORY_LIMIT_MINE_MB | Memory limit for MINE, specified in megabytes. Note that these figures do not include overhead of Perl and of system malloc(), thus do not set it to consume all of your available memory. It does not use ulimit or other OS-based limits. Settings this too low will cause MINE to abort. |
MEMORY_LIMIT_APPLY_MB | Memory limits for APPLY, specified in megabytes. Note that these figures do not include overhead of Perl and of system malloc(), thus do not set it to consume all of your available memory. It does not use ulimit or other OS-based limits. Setting this low may cause performance degradation, setting it too low will cause APPLY to abort. |
MINE_ARCH_DEST | Default is empty. MINE will ONLY look in this directory for archivelogs. This parameter will be used in conjunction with the REDO_READ_METHOD set to ARCHONLY |
MINE_ARCH_DEST_FORMAT | Default is empty. |
MINE_ASM | SID for ASM (usually +ASM). Note that on RAC, this must be set to the local ASM node name (e.g. +ASM2). MINE_ASM OFF This instructs Dbvisit Replicate to ignore redo logs in ASM and uses the redo logs on the file system (when they are multiplexed). This is useful when using older versions of ASM such as 10.1 as Dbvisit Replicate only supports ASM version 10.2 and higher. |
MINE_DATABASE | MINE database TNS connection string. |
MINE_DATABASE_DBID | DBID (see v$database) of databases where mine connects. The default is empty and the variable is optional; however, it's always set by setup wizard. This helps to check that the connection strings resolve to correct databases = the same ones from mine server. |
MINE_HEARTBEAT_TIME |
This parameter determines the frequency of how often an update happens to the DBRSCOMMON_HEARTBEAT table in the dbvrep schema. This table can be used to monitor the state of replication. |