Topics:
Upgrades to Oracle GoldenGate should be performed by an administrator who has thorough knowledge of the commands that are necessary to control processes and obtain status information.
Parent topic: Overview of Upgrading Oracle GoldenGate
Before performing the upgrade procedure, read the Release Notes for Oracle GoldenGate to determine whether the new release affects the following in your configuration:
New default process behavior.
Parameters that changed or were deprecated.
Parameters that were added to support a desired new feature or database type.
Parameter default values that have changed.
New data type support that might require changes to TABLE
or MAP
statements.
Interaction with native database components that might require database change.
You can prevent startup delays that can cause lag by having all of your parameter changes made ahead of time, so that they are ready when you restart the processes. You should not make parameter changes while a process is running, but you can:
Parent topic: Overview of Upgrading Oracle GoldenGate
The Replicat parameter TRAILCHARSET
is renamed to SOURCECHARSET
in the 12c (12.3.0.1) release, but Oracle GoldenGate continues to support TRAILCHARSET
as an alias. When upgrading Oracle GoldenGate, you can keep TRAILCHARSET
or change it to SOURCECHARSET
. One of those parameters is required to support character-set conversion from a pre-11.2.1 Extract if you are not upgrading that Extract at this time. If you are upgrading both Extract and Replicat to the 12c release, the information about the source character set is written to the trail automatically, and neither TRAILCHARSET
nor SOURCECHARSET
is needed.
Parent topic: Overview of Upgrading Oracle GoldenGate
Oracle GoldenGate treats strings that are within single quotes as literals. Oracle GoldenGate has supported double-quoted object names since release 11.2 but did not fully implement the rule of single quotes for literals until release 12.1. Supporting double quotes for object names and single quotes for literals brings Oracle GoldenGate into compliance with SQL-92 rules and is now enabled by default. The USEANSISQLQUOTES
parameter, which forced the SQL-92 standard in previous releases, is now deprecated.
The change to default SQL-92 rules affects object names in parameter files, input to SQLEXEC
clauses, OBEY
files, conversion functions, user exits, and commands. You have the following options as a result of this change:
Retain non-SQL-92 quote rules: Oracle GoldenGate retains backward compatibility to enable the retention of current parameter files that do not conform to SQL-92 rules. To retain non-SQL-92 rules, add the NOUSEANSISQLQUOTES
parameter to the GLOBALS
file before you perform the upgrade and retain that parameter going forward. NOUSEANSISQLQUOTES
affects Extract, Replicat, DEFGEN, and GGSCI.
Upgrade your parameter files to use SQL-92 rules: Oracle GoldenGate provides the convprm
conversion tool which you can run to convert your parameter files to be in conformance with SQL-92 rules. Run the convprm
tool before you start the upgrade process.
convprm
ToolThe following describes the convprm
tool:
It is a command line program which can be run either manually or scripted.
It converts string literals from double-quoted character strings to single-quoted character strings, but leaves double-quoted object names intact. It can distinguish between an object name and a string literal even when both are represented as a sequence of characters delimited with double quotes.
It escapes quotation marks. Quotation marks must be escaped when the character that is used to delimit the string appears in the literal string itself. For example, the sentence "This character "" is a double quote" contains an escaped quote mark. The sentence 'This character '' is a single quote' contains an escaped single quote mark. When converting from double quotes to single quotes, convprm
removes one of the repeated double quotes from escaped double quotes and escapes the single quotes that are embedded in the character sequence.
It issues a warning message if NOUSEANSISQLQUOTES
is specified in the GLOBALS
file. The message states that the converted parameter file is incompatible with NOUSEANSISQLQUOTES
, but the parameter file was updated anyway.
It recursively converts the files that are included through an OBEY
or INCLUDE
parameter.
It creates a backup of the initial parameter file in the same directory as the original file. The backup has the name of the original file with the .bck
suffix. The creation of a backup file can be disabled when you run the convprm
tool.
It converts the character set. The character set for the new parameter file is taken from the CHARSET
parameter in the original parameter file. Absent that parameter, the character set is taken from the CHARSET
parameter in the GLOBALS
file. Absent a GLOBALS
parameter, the new parameter file is written in the character set of the local operating system.
Table 1-1 provides examples of the conversion outcome.
Table 1-1 Comparison of Input Requirements for [NO]USEANSISQLQUOTES
Input variable | String literal with old syntax | String literal with new syntax |
---|---|---|
Double quotes are escaped in the old syntax but not in the new syntax. |
"abc""def" |
'abc"def' |
Single quotes are escaped in the new syntax but not in the old syntax. |
"abc'def" |
'abc''def' |
Parent topic: Upgrade Considerations if Using Quoted Object Names
To use the convprm
tool:
On errors, the process abends in the same way as other Oracle GoldenGate executables. All error messages that cause the converter to fail are sent to the Oracle GoldenGate error log.
If you are currently using the USEANSISQLQUOTES
parameter, you may remove it or leave it in the parameter files. It is now the default.
Parent topic: Upgrade Considerations if Using Quoted Object Names