Professional Documents
Culture Documents
MySQL
Oracle GoldenGate 11gR1 now offers extended support for MySQL. In this version, logbased Capture from MySQL 5.1.15 or later is supported (Delivery does not have this restriction) and is achieved by natively reading and parsing the MySQL transaction logs.
Bounded Recovery
A new Bounded Recovery feature has been added that guarantees an efficient recovery after the Extract stops for any reason, planned or unplanned, no matter how many open (uncommitted) transactions there were at the time that Extract stopped, nor how old they were. Bounded Recovery sets an upper boundary for the maximum amount of time that it would take for Extract to recover to the point where it stopped and then resume normal processing. NOTE: Before modifying this parameter from its default settings, it is highly recommended to contact Oracle support for guidance.
Microsoft OLE DB
OLE DB is an API designed by Microsoft for accessing different types of data stored in a uniform manner. New in Oracle GoldenGate 11g, the default connection from Replicat uses OLE DB to connect to the target database (instead of ODBC).
Dynamic SQL
Dynamic SQL is a programming technique that enables a user to build SQL statements dynamically at runtime. In Oracle GoldenGate, the DYNSQL and NODYNSQL parameters are used to control the way that SQL statements are formed. With NODYNSQL, Replicat uses literal SQL statements with the bind variables resolved. With DYNSQL (default value), Replicat uses dynamic SQL to compile a statement once and then execute it many times with different bind variables. In most environments, using DYNSQL offers the best efficiency and most throughput. However, there may be some circumstances where NODYNSQL proves to be faster and more efficient.
Long-Running Transactions
The TRANSACTIONTIMEOUT parameter prevents an uncommitted Replicat target transaction from holding locks on the target database and consuming its resources unnecessarily. The value of this parameter can be changed so that Replicat can work within existing application timeouts and other database requirements on the target database. To verify if Replicat is currently backing out a timed-out transaction, you can use the following command:
GGSCI> SEND REPLICAT group, STATUS Performing transaction timeout recovery Waiting for data at logical EOF after transaction timeout recovery
TRANSACTIONTIMEOUT Parameter
During normal operations, Replicat remembers the position in the trail of the beginning of the first sources transaction in the current transaction, in case the transaction must be abended or retried. When TRANSACTIONTIMEOUT is enabled, Replicat also saves the position of the first record of the current source transaction and will use that position as the logical end-of-file (EOF) if it is triggered.
Activity Logging
The Activity Logging subsystem is a set of software components that record application activity in a variety of formats, in a flexible, lightweight and robust manner. Information captured by the Activity Logging API is used to diagnose normal application processing and new program logic under development. It can also provide additional details when application operation fails unexpectedly.
Schema Modifications
If the DDL has changed in a heterogenous replication environment, then the target side sourcedefs files must be modified to continue .
include all Oracle GoldenGate messages suppress all Oracle GoldenGate messages filter to include information, warning, or error messages, or any combination of those types
When you use SYSLOG in the GLOBALS parameter file, it controls message filtering for all of the Oracle GoldenGate processes on the system. When it appears in a Manager parameter file, it controls messages filtering only for the Manager process. If used in both the GLOBALS and Manager parameter files, the Manager setting overrides the GLOBALS setting for the Manager process. This enables you to use separate settings for Manager and all of the other Oracle GoldenGate processes.
TCP/IP port.
enable Oracles supplemental logging automatically for new tables created with a CREATE TABLE. to update supplemental logging for tables affected by an ALTER TABLE to add or drop columns. update supplemental logging for tables that are renamed. update supplemental logging for tables where unique or primary keys are added or dropped.
For a more detailed look into the other arguments, consult the Oracle GoldenGate Windows and UNIX Reference Guide version 11gR1 (11.1.1).
Valid for Replicat (Oracle only). Enables a source session schema to be mapped to (transformed to) a different session schema on the target. - <source_schema> is the session schema that is set with ALTER SESSION set CURRENT_SCHEMA on the source. - <target_schema> is the session schema that is set with ALTER SESSION set CURRENT_SCHEMA on the target. Wildcards are not supported. You can use multiple MAPSESSIONSCHEMA parameters to map different schemas.
MAPSESSIONSCHEMA <source_schema> TARGET <target_schema>: MAPSESSIONSCHEMA overrides any mapping of schema names that is based on master
Valid for Extract for Oracle. Directs Extract to encrypt all passwords in source DDL before writing the DDL to the trail. - DEFAULT specifies that the passwords were encrypted by using a random key generated by Oracle GoldenGate. On the target, the password is decrypted automatically without requiring an ENCKEYS file. - ENCRYPTKEY <keyname> specifies that passwords were encrypted with a userdefined method and specifies a lookup key in an ENCKEYS file on the target system.
PASSWORD ENCRYPTKEY [ DEFAULT | ENCRYPTKEY <keyname>]:
To use the encryption options, you must first generate the encrypted password with the ENCRYPT PASSWORD command in GGSCI. For more information about Oracle GoldenGate encryption options, see the Oracle GoldenGate Windows and UNIX Administrators Guide. PASSWORD ENCRYPTKEY [ DEFAULT | ENCRYPTKEY <keyname>]: Valid for Replicat (Oracle only). Use in an active-active bidirectional configuration. This parameter notifies Replicat on the system where DDL originated that this DDL was propagated to the other system, and that Replicat should now update its object metadata cache to match the new metadata. This keeps Replicats metadata cache synchronized with the current metadata of the local database. USEOWNERFORSESSION: Valid for Replicat (Oracle only). Forces the schema of an unqualified object in the Replicat DDL statement to be that of the Replicat session schema, instead of the schema in an ALTER SESSION SET CURRENT_SCHEMA statement, which is the default behavior.
archived logs. - Default in regular mode: Extract starts processing an archived log immediately when it becomes available, without waiting for it to be written to disk. Override in regular mode: Use COMPLETEARCHIVEDLOGONLY to force Extract to wait until an archived log is completely written to disk before beginning to read it. Default in archived log only (ALO) mode: Forces Extract to wait for the complete archived log to be written to disk. Override in ALO mode: Use NOCOMMPLETEARCHIVEDLOGONLY to force Extract to start processing an archived log immediately when it becomes available.
Upgrading to Oracle GoldenGate 11gR1 from Oracle GoldenGate 10.4 (cont). 3. Stop all of the Oracle GoldenGate processes, starting with Extract and Replicat processes, and then the Manager process.
GGSCI> STOP EXTRACT <group> GGSCI> STOP REPLICAT <GROUP> GGSCI> STOP MANAGER
4. Move the files and programs that you expanded from your new directory into your existing Oracle GoldenGate directory. 5. (Oracle source database if using DDL replication) Follow the instructions in Rebuilding the DDL environment on slide 10 and then return to the follow steps. 6. Start all of the Oracle GoldenGate processes, starting with Manager, and then Extract and Replicat.
GGSCI> START MANAGER GGSCI> START EXTRACT <group> GGSCI> START REPLICAT <GROUP>
Upgrading to Oracle GoldenGate 11gR1 from Version(s) Prior to Oracle GoldenGate 10.4
Perform the following steps to upgrade the target database only from an Oracle GoldenGate v10.x prior to 10.4 and to Oracle GoldenGate v9.5 and earlier (for upgrading specifically on z/OS, there are some additional steps that may be required. Reference Upgrading to Oracle GoldenGate v11g Release 1 (11.1.1)): 1. Install v11.1.1 of Oracle GoldenGate into a new directory by following the directions for a new installation for your database and platform. You do not need to create the subdirectories. You only need to complete the steps to the point where the programs have been expanded. See the installation instructions for your supported database.
Upgrading to Oracle GoldenGate 11gR1 from Version(s) Prior to Oracle GoldenGate 10.4 (cont). 4. Move the files and programs that you expanded from your new directory into your existing Oracle GoldenGate directory. 5. Start Manager and then Replicat:
GGSCI> START MANAGER GGSCI> START REPLICAT <GROUP>
Upgrading to Oracle GoldenGate 11gR1 from Oracle GoldenGate 10.4 (cont). 3. Stop all of the Oracle GoldenGate processes, starting with Extract and Replicat processes, and then the Manager process.
GGSCI> STOP EXTRACT <group> GGSCI> STOP REPLICAT <GROUP> GGSCI> STOP MANAGER
4. Move the files and programs that you expanded from your new directory into your existing Oracle GoldenGate directory. 5. (Oracle source database if using DDL replication) Follow the instructions in Rebuilding the DDL environment on slide 10 and then return to the follow steps. 6. Remove the TRANSMEMORY parameter from any Extract parameter file. This applies to all platforms except NonStop, OSS, and z/OS. 7. Remove the CACHESTATEMENTS option of BATCHSQL if being used in the Replicat parameter file.
9. If not upgrading the target to v11.1.1, modify the Extract that is sending data to the target (usually a data pump but could be the primary Extract) to include the FORMAT RELEASE option in the RMTTRAIL parameter. This includes the online Extracts and initial-load Extracts. This ensures that the trails that the new version of Oracle GoldenGate writes are backwards compatible with the downstream Oracle GoldenGate environments and that the downstream Replicats can process the data.
RMTTRAIL <trail> FORMAT RELEASE {9.0 | 9.5 | 10.4}
10. A new Oracle GoldenGate trail header was added in v10. In order to switch to this new format successfully, you must roll over each trail with the following command to all of the appropriate Extract and data-pump groups:
ALTER EXTRACT <group>, ETROLLOVER
Rebuilding the DDL Environment to a Clean State For Oracle databases, to completely remove, and then reinstall, the Oracle GoldenGate DDL object in preparation for an upgrade to Oracle GoldenGate v11.1.1, perform the following steps: 1. After stopping the source Oracle GoldenGate processes, change directories to the Oracle GoldenGate installation directory. 2. Run SQL*Plus and log in as a user that has SYSDBA privileges. 3. Disable all sessions that ever issued DDL. Otherwise the database might generate an ORA-04021 error. 4. Run the ddl_disable script to disable the DDL trigger. 5. Run the ddl_remove script to remove the Oracle GoldenGate DDL trigger, the DDL history and marker tables, and other associated objects. This script produces a ddl_remove_spool.txt file that logs the script output and a ddl_remove_set.txt file that logs current user environment settings in case they are needed for debugging.
Rebuilding the DDL Environment to a Clean State (cont). 6. Run the marker_remove script to remove the Oracle GoldenGate marker support system. This script produces a marker_remove_spool.txt file that logs the script output and a marker_remove_set.txt file in case they are needed for debugging. 7. Run the marker_setup script to reinstall the Oracle GoldenGate marker support system. You will be prompted for the name of the Oracle GoldenGate schema. 8. Run the ddl_setup script. You will be prompted for: - The name of the Oracle GoldenGate DDL schema. - The installation mode. Use the INITIALSETUP mode. This mode drops and recreates existing DDL objects before creating new objects. 9. Run the role_setup script to recreate the Oracle GoldenGate DDL role. 10. Grant the role you just created to all Oracle GoldenGate users under which the following Oracle GoldenGate processes run: Extract, Replicat, GGSCI, and Manager. You might need to make multiple grants if the processes have different user names. 11. Run the ddl_enable.sql script to enable the DDL trigger. 12. Return to the upgrade procedure that you were following.
Property Templates to Use with Flat File A new flat file writer property, {writer}.template, has been added for the implementation of property templates. This property specifies the name of the template of typical properties that is to be used for that flat file writer.
Property Templates The property templates presets certain properties based on common usage. The template settings can be overridden by setting the property in the properties file. For each property in the template, the system first checks to see if that property is set in the properties file itself. If the user hasn't specified it, the template setting is used.
Siebel Remote Support When Oracle GoldenGate is used with Siebel applications, remote users do not see changes made to Siebel by Oracle GoldenGate. Only changes made through the Siebel application server are written to the remote log. Oracle GoldenGate writes directly to the underlying database tables without creating the log entries. Oracle GoldenGate for Flat File 11gR1 writes transactions to a set of rolling files in a specific format understood by the Siebel DMUTL tool.
Siebel remote integration that controls whether or not a colon is written between the date and time. When set to false, the date and time column values are written to the output files in the default format of the Oracle GoldenGate trail, YYYYMMDD:HH:MI:SS.FFFF. files.data.bom.code - A flat file writer output format added for Siebel remote integration that specifies a hexadecimal value as the byte order marker (BOM) to be written to the beginning of the file. groupcols - A flat file writer output format property added for Siebel remote integration that controls whether or not the column names, before values and after values are grouped together.
afterfirst - A flat file writer data content property added for Siebel remote
integration that controls whether or not the after image is written before the before image when includebefores is set to true.
properties added for Siebel remote integration that specify the metadata columns to use to mark the beginning and end of a transaction. These marker records are written (with end of line delimiters) to the output files before and after the operation records that make up the transaction. goldengate.userexit.buffertxs=true - A general property added for Siebel remote integration that specifies that the transactions are to be buffered in memory. This is required when accumulating the number of operations in a transaction.
The following metadata columns have also been added: %COLNAME The value in the named column. <value> Any literal. The quote policy will be applied. numops The number of operations in the current transaction. numcols The number of columns to be output.
Flexible File Rollover There are three different rollover settings that can be used: Rollover based on commit timestamp - Files may be rolled over based on the Julian commit timestamp. This is enabled using the new files.data.rollover.timetype parameter. Synchronized rollover of multiple files - All currently open files may be rolled over at the same time. This is enabled using the new files.data.rollover.multiple parameter. Rollover at a specified time - The rollover may be based on a specific time. This is enabled using the new files.data.rollover.attime parameter.
Quote Policy Enhancements Two new properties allow the user to specify certain criteria on data types that are placed in quotes: dsv.quotes.policy Controls the policy for applying quotes by allowing the user to select from the options: - default Only dates and chars are quoted - never No metadata column or column values are quoted - always All metadata columns and column values are quoted - datatypes Only specific data types are quoted dsv.quotes.policy.datatypes Controls whether integer, character, float, or datetime data types are to be quoted when dsv.quotes.policy is set to datatypes.
Source and Target Definitions Oracle GoldenGate for Java includes a Gendef utility that generates an Oracle GoldenGate source definitions file from the properties defined in a properties file. It creates a normalized definition of tables based on the property settings and other parser-specific data definition values.