iscdc for oracle

104
IBM InfoSphere Change Data Capture Version 6.5 InfoSphere Change Data Capture for Oracle, Version 6.5 End-User Documentation

Upload: puneetb11

Post on 14-Oct-2014

304 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ISCDC for Oracle

IBMInfoSphere Change Data CaptureVersion 6.5

InfoSphere Change Data Capture forOracle, Version 6.5End-User Documentation

����

Page 2: ISCDC for Oracle
Page 3: ISCDC for Oracle

IBMInfoSphere Change Data CaptureVersion 6.5

InfoSphere Change Data Capture forOracle, Version 6.5End-User Documentation

����

Page 4: ISCDC for Oracle

NoteBefore using this information and the product it supports, read the information in “Notices” on page 93.

First edition

This edition applies to version 6, release 5 of IBM InfoSphere Change Data Capture (product number 5724-U70) andto all subsequent releases and modifications until otherwise indicated in new editions.

© Copyright IBM Corporation 2008, 2010.US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contractwith IBM Corp.

Page 5: ISCDC for Oracle

Contents

About InfoSphere CDC and InfoSphereCDC Management Console . . . . . . 1

System requirements . . . . . . . . . 3Supported operating systems and processors . . . 3Supported databases. . . . . . . . . . . . 3Hardware requirements. . . . . . . . . . . 4Port requirements. . . . . . . . . . . . . 4

Before you install . . . . . . . . . . 5Required database, user accounts, and schemas. . . 5Allocating disk quota for capture components . . . 6Enabling supplemental logging . . . . . . . . 6Enabling InfoSphere CDC to use a bulk load refresh 7Setting the database instance to ARCHIVELOG mode 7Starting the Oracle listener. . . . . . . . . . 8Setting up a remote connection . . . . . . . . 8

To setup a remote connection . . . . . . . . 8

Installing InfoSphere CDC . . . . . . 11To install InfoSphere CDC (UNIX and Linux) . . . 11To override the locale for the installation (UNIX andLinux) . . . . . . . . . . . . . . . . 12InfoSphere CDC and Automatic StorageManagement (ASM) . . . . . . . . . . . 12Installing InfoSphere CDC using a silent installation 12

To perform a silent installation of InfoSphereCDC (UNIX and Linux) . . . . . . . . . 12

Upgrading Transformation Server forOracle to InfoSphere CDC for Oracle . . 15To upgrade from Transformation Server for Oracleto InfoSphere CDC for Oracle . . . . . . . . 15

Installing InfoSphere CDC in an OracleReal Application Clusters (RAC)environment . . . . . . . . . . . . 17Defining a service for InfoSphere CDC intnsnames.ora . . . . . . . . . . . . . . 18Creating a failover script for InfoSphere CDC in anOracle RAC environment . . . . . . . . . . 19

Configuring InfoSphere CDC (UNIX andLinux) . . . . . . . . . . . . . . . 21Configuring InfoSphere CDC instances (UNIX andLinux) . . . . . . . . . . . . . . . . 21

To add a new instance of InfoSphere CDC (UNIXand Linux) . . . . . . . . . . . . . 21To edit an instance of InfoSphere CDC (UNIXand Linux) . . . . . . . . . . . . . 22To delete an instance of InfoSphere CDC (UNIXand Linux) . . . . . . . . . . . . . 23

Configuring InfoSphere CDC for OS(operating system) clustering (UNIXand Linux) . . . . . . . . . . . . . 25Performing a forced or manual failover ofInfoSphere CDC . . . . . . . . . . . . . 26Preparing for a failover of InfoSphere CDC. . . . 26

After you install and configure . . . . 29Starting InfoSphere CDC . . . . . . . . . . 29

To start InfoSphere CDC (UNIX and Linux) . . 29Stopping InfoSphere CDC . . . . . . . . . 29

To stop InfoSphere CDC (UNIX and Linux). . . 29Maintaining active TCP connections in a networkenvironment . . . . . . . . . . . . . . 30

To maintain active TCP connections . . . . . 30Enabling SQL statements in Management Console 31

To enable SQL statements in ManagementConsole. . . . . . . . . . . . . . . 31

Privileges for Oracle DBA and InfoSphere CDCusers . . . . . . . . . . . . . . . . 31

Privileges required by the Oracle DBA . . . . 31Privileges required by users . . . . . . . . 32

Metadata tables . . . . . . . . . . . 37

Commands for InfoSphere CDC . . . . 39Using the InfoSphere CDC commands . . . . . 39Setting the TSINSTANCE environment variable . . 40Controlling replication commands . . . . . . . 40

dmendreplication - End replication . . . . . 40dmrefresh - Refresh subscription . . . . . . 44dmstartmirror - Start mirroring . . . . . . . 45

Database transaction log commands . . . . . . 47dmarchivelogavailable - Mark archive log asavailable . . . . . . . . . . . . . . 47dmarchivelogremoved - Mark archive log asremoved . . . . . . . . . . . . . . 48dmdecodebookmark - Display verboseinformation bookmark. . . . . . . . . . 49dmsetbookmark - Set bookmark . . . . . . 50dmshowbookmark - Display bookmarkinformation . . . . . . . . . . . . . 51dmshowlogdependency - Show Log Dependency 51

Managing tables for replication commands . . . . 53dmdescribe - Describe source tables . . . . . 54dmflagforrefresh - Flag for Refresh . . . . . 54dmmarktablecapturepoint - Mark a table capturepoint on a source table . . . . . . . . . 55dmpark - Park table . . . . . . . . . . 56dmreaddtable - Update source table definition. . 57dmreassigntable - Update target table definition 58dmsetreplicationmethod - Set replication method 59

Monitoring replication commands . . . . . . . 60dmclearevents - Clear events . . . . . . . 60

© Copyright IBM Corp. 2008, 2010 iii

Page 6: ISCDC for Oracle

dmgetsubscriptionstatus - Get subscription status 61dmshowevents - Display InfoSphere CDC events 62

Exporting and importing configuration commands 63dmexportconfiguration - Export InfoSphere CDCConfiguration . . . . . . . . . . . . 64dmimportconfiguration - Import InfoSphere CDCConfiguration . . . . . . . . . . . . 64

Continuous Capture and staging store commands 65dmenablecontinuouscapture - Enable ContinuousCapture . . . . . . . . . . . . . . 66dmdisablecontinuouscapture - DisableContinuous Capture . . . . . . . . . . 66dmgetstagingstorestatus - Retrieve Staging Storestatus . . . . . . . . . . . . . . . 66dmclearstagingstore - Remove cached operationsfrom the staging store . . . . . . . . . . 67

Other commands . . . . . . . . . . . . 67dmbackupmd - Backup Metadata . . . . . . 68dmconfigurets - Configure InfoSphere CDC . . 68dmmdcommander . . . . . . . . . . . 69dmmdconsole . . . . . . . . . . . . 69dmset - Set InfoSphere CDC system parameter 69dmshowversion - Show InfoSphere CDC version 70dmshutdown - Shut down InfoSphere CDC . . 70dmsupportinfo - Collect IBM Supportinformation . . . . . . . . . . . . . 72dmterminate - Terminate InfoSphere CDCprocesses . . . . . . . . . . . . . . 73dmts32 - Start InfoSphere CDC . . . . . . . 74

dmts64 - Start InfoSphere CDC . . . . . . . 74dmverifycommunications . . . . . . . . . 75

User exits for InfoSphere CDC . . . . 77Stored procedure user exits for table and row leveloperations . . . . . . . . . . . . . . . 77

Defining a stored procedure user exit. . . . . 77Stored procedure user exit database connections 78Retrieving data with a stored procedure user exit 78Example of a stored procedure user exit . . . . 84

Sample Java class user exits for InfoSphere CDC . . 85To compile the sample Java class user exits(UNIX and Linux) . . . . . . . . . . . 85

InfoSphere CDC API reference – Javadocs . . . . 86

Conflict resolution audit table . . . . . 87Structure of the conflict resolution audit table . . . 87Row image format . . . . . . . . . . . . 89Truncated images . . . . . . . . . . . . 89Unaudited data types . . . . . . . . . . . 89

Troubleshooting and contacting IBMSupport . . . . . . . . . . . . . . 91

Notices . . . . . . . . . . . . . . 93Trademarks . . . . . . . . . . . . . . 95

iv InfoSphere Change Data Capture: End-User Documentation

Page 7: ISCDC for Oracle

About InfoSphere CDC and InfoSphere CDC ManagementConsole

IBM® InfoSphere™ Change Data Capture, or simply InfoSphere CDC, is areplication solution that captures database changes as they happen and deliversthem to target databases, message queues, or an ETL solution such as InfoSphereDataStage® based on table mappings configured in the InfoSphere CDCManagement Console GUI application.

InfoSphere CDC provides low impact capture and fast delivery of data changes forkey information management initiatives including dynamic data warehousing,master data management, application consolidations or migrations, operational BI,and enabling SOA projects. InfoSphere CDC also helps reduce processingoverheads and network traffic by only sending the data that has changed.Replication can be carried out continuously or periodically. When data istransferred from a source server, it can be remapped or transformed in the targetenvironment.

The following diagram illustrates the key components of InfoSphere CDC.

The key components of the InfoSphere CDC architecture are described below:v Access Server—Controls all of the non-command line access to the replication

environment. When you log in to Management Console, you are connecting toAccess Server.

v Admin API—Operates as an optional Java™-based programming interface thatyou can use to script operational configurations or interactions. After you haveset up replication, Management Console can be closed on the client workstationwithout affecting active data replication activities between source and targetservers.

v Apply agent—Acts as the agent on the target that processes changes as sent bythe source.

v Command line interface—Allows you to administer datastores and useraccounts, as well as to perform administration scripting, independent ofManagement Console.

© Copyright IBM Corp. 2008, 2010 1

Page 8: ISCDC for Oracle

v Communication Layer (TCP/IP)—Acts as the dedicated network connectionbetween the Source and the Target.

v Datastore—The Source and Target datastores represent the data files andInfoSphere CDC instances required for data replication. Each datastorerepresents a database to which you want to connect and acts as a container foryour tables. Tables made available for replication are contained in a datastore.

v InfoSphere CDC Management Console—The interactive application that youuse to configure and monitor replication. It allows you to manage replication onvarious servers, specify replication parameters, and initiate refresh and mirroringoperations from a client workstation. Management Console also allows you tomonitor replication operations, latency, event messages, and other statisticssupported by the source or target datastore. The monitor in ManagementConsole is intended for time-critical working environments that requirecontinuous analysis of data movement.

v Metadata—Represents the information about the relevant tables, mappings,subscriptions, notifications, events, and other particulars of a data replicationinstance that you set up.

v Mirror—Performs the replication of changes to the target table or accumulationof source table changes used to replicate changes to the target table at a latertime. If you have implemented bidirectional replication in your environment,mirroring can occur to and from both the source and target tables.

v Refresh—Performs the initial synchronization of the tables from the sourcedatabase to the target. This is read by the Refresh reader.

v Replication Engine—Serves to send and receive data. The process that sendsreplicated data is the Source Capture Engine and the process that receivesreplicated data is the Target Engine. An InfoSphere CDC instance can operate as asource capture engine and a target engine simultaneously.

v Single Scrape—Acts as a source-only log reader and a log parser component. Itchecks and analyzes the source database logs for all of the subscriptions on theselected datastore.

v Source transformation engine—Used to process row filtering, critical columns,column filtering, encoding conversions, and other data to propagate to the targetdatastore engine.

v Source database logs—Maintained by the source database for its own recoverypurposes. The InfoSphere CDC log reader inspects these in the mirroringprocess, but only looks for those tables that are mapped for replication.

v Target transformation engine—Used to process data and value translations,encoding conversions, user exits, conflict detections, and other data on the targetdatastore engine.

There are two types of target-only destinations for replication that are notdatabases:v JMS Messages—Acts as a JMS message destination (queue or topic) for

row-level operations that are created as XML documents.v InfoSphere DataStage—Processes changes delivered from InfoSphere CDC that

can be used by InfoSphere DataStage jobs.

For more information on how to install Management Console and Access Server,see Access Server and Management Console - Installation Guide. For information onhow to install your source and target replication engines, see the end-userdocumentation for your replication engine platform.

2 InfoSphere Change Data Capture: End-User Documentation

Page 9: ISCDC for Oracle

System requirements

Before you install InfoSphere CDC, ensure that the system you choose meets thenecessary operating system, hardware, software, communications, disk, andmemory requirements.

In this section, you will learn:“Supported operating systems and processors”“Supported databases”“Hardware requirements” on page 4“Port requirements” on page 4

Supported operating systems and processors

Operating system and processor

One of the following:

v AIX®, version 5.3.0.8 or later—POWER® processor

v HP-UX, version 11.11 or later—PA-RISC processor

v HP-UX, version 11.23 or later—Itanium® processor

v Linux®, Kernel version 2.6.x—Intel® or AMD x86-32, x86-64 processor

v Sun Solaris, version 2.8 or later—SPARC processor

Note: If you are upgrading your operating system to a more recent version, youshould also consider upgrading InfoSphere CDC to the latest version to ensuresupport for the upgraded operating system.

Supported databases

Database

Install Oracle Client software and one of the following versions of the Oracle database:

v Oracle 9i (release 9.2.0.5 or later)

v Oracle 10g (release 10.1.0.4 or later)

v Oracle 11g (release 11gR1 and 11gR2)

If you are configuring InfoSphere CDC for an Oracle RAC environment, the followingversions of Oracle are supported:

v Oracle 9i (release 9.2.0.5 or later)

v Oracle 10gR2

v Oracle 11g (release 11gR1 and 11gR2)

Note: If you are upgrading your database to a more recent version, you shouldalso consider upgrading InfoSphere CDC to the latest version to ensure support forthe upgraded database.

© Copyright IBM Corp. 2008, 2010 3

Page 10: ISCDC for Oracle

Hardware requirements

RAM Disk spaceOracle tablespace forInfoSphere CDC metadata

1 GB

Available for IBM processes.

5 GB—For installation files. 25 MB—This is only anestimate and depends on thesize of your replicationconfiguration.

Port requirementsInfoSphere CDC requires that you allocate a port for communication with clientworkstations running Management Console and other servers. The port must beaccessible through a firewall, although you do not require access to the internet.

Protocol Default port Purpose

TCP 11111 Accepts connections from:

v Management Console

v Other installations ofInfoSphere CDC as asource of replication

v Command line utilities

For more information onhow to install ManagementConsole, see ManagementConsole and Access Server -Installation Guide.

Related concepts

“Maintaining active TCP connections in a network environment” on page 30

4 InfoSphere Change Data Capture: End-User Documentation

Page 11: ISCDC for Oracle

Before you install

This section contains information on the tasks that you must complete beforeinstalling InfoSphere CDC. This section assumes that you have met all of thehardware, software, database, and port requirements. You must complete all of thetasks below before installing InfoSphere CDC.

In this section, you will learn:“Required database, user accounts, and schemas”“Allocating disk quota for capture components” on page 6“Enabling supplemental logging” on page 6“Enabling InfoSphere CDC to use a bulk load refresh” on page 7“Setting the database instance to ARCHIVELOG mode” on page 7“Starting the Oracle listener” on page 8“Setting up a remote connection” on page 8

Required database, user accounts, and schemasConfiguring an Oracle database

When you configure InfoSphere CDC, you are prompted for the name of theOracle database you want InfoSphere CDC to connect to and replicate data. Beforeinstalling InfoSphere CDC, ensure that this Oracle database exists and that youhave created and set up a database user that has access to it.

Setting up a UNIX® user account

If you are installing InfoSphere CDC on a UNIX system, you must set up a new, ordecide on an existing UNIX account that you will use to install, configure, orupgrade InfoSphere CDC. You can install InfoSphere CDC in the directory of yourchoice, however, it must be owned by the UNIX account.

Setting up an Oracle user account with DBA privileges

Create a user account that has DBA privileges for the Oracle instance. When youconfigure InfoSphere CDC, you are prompted for the name of the Oracle databaseyou want InfoSphere CDC to connect to and the user name and password (neitherare case-sensitive) of the Oracle user that has access to this database. Beforeinstalling InfoSphere CDC, make sure you review the specific grants required bythe Oracle DBA. Use the sample ora-createuser.sql SQL script located in theinstallation directory to create an Oracle user with all the necessary DBA privilegesthat are required.

Optionally, you can create a user account that has read-only database connection tothe source database. Specify that you want read only access and provide this username when installing and configuring InfoSphere CDC. Read-only databaseconnection to the source database indicates that the user can only view data ormirror subscribed tables. The user cannot change any information. If you use aread-only user, you should also ensure you have enabled supplemental logging atthe database table level, prior to installing and configuring InfoSphere CDC.

© Copyright IBM Corp. 2008, 2010 5

Page 12: ISCDC for Oracle

Note: If you plan to use a read-only database connection, ensure that you have theDBMS_FLASHBACK Oracle supplied package installed. By default, this package isinstalled when you create an Oracle database and run the CATPROC.SQL script. Nofurther action is required for this package. For more information about thispackage, refer to your Oracle documentation.

Setting up a user name and password for an ASM instance

If your database instance is managed by Oracle Automatic Storage Manager(ASM), then you should already have an Oracle account for the ASM instance towhich you want to connect. InfoSphere CDC requires a user name and passwordso that it can connect to the ASM instance that corresponds to the node in thecluster. The ASM user must have SYSDBA privileges in order to log into ASM.

Configuring an Oracle schema

Create a schema or choose an existing schema for your database metadata tables.You will have to specify this schema when you configure InfoSphere CDC.Related concepts

“Enabling supplemental logging”

Allocating disk quota for capture componentsInfoSphere CDC uses specific components to capture changes from the databaselog. These components accumulate uncommitted transactions and data changes inmemory. InfoSphere CDC dynamically allocates memory between thesecomponents as required and only persists data to disk in the following scenarios:v An especially large uncommitted transaction is being accumulated.v A latent subscription. For example, you may know of a subscription or set of

subscriptions that will only run periodically which will cause the change log togrow. If sufficient memory to store the data for this latent subscription is notavailable, the data will be persisted to disk. Also, on shutdown or when thissubscription is stopped, InfoSphere CDC persists the data to disk.

You can optionally choose to bound disk space utilization by setting a quota usingthe mirror_global_disk_quota_mb system parameter. When the disk quota is met,InfoSphere CDC will stop all running subscriptions and generate an event in theEvent Log. No data is lost in this scenario.

Enabling supplemental loggingOracle supplemental logging simply means that all columns or selected columnsare specified for extra logging. InfoSphere CDC requires supplemental logging onthe source database at both the database level and table level.v Database level supplemental logging This is an Oracle requirement that ensures

that the Oracle redo log contains the information required to describe all datachanges completely. The appropriate setting for database level supplementallogging (by database version) is:– Oracle 9i—enable minimal supplemental logging. This is the default level of

supplemental logging in this version of Oracle.– Oracle 10g or higher—enable minimal database level supplemental logging.

You must set this value explicitly in this version of Oracle because the defaultlevel of supplemental logging is not sufficient. To check if minimalsupplemental logging has been enabled at the database level, run the

6 InfoSphere Change Data Capture: End-User Documentation

Page 13: ISCDC for Oracle

following SQL statement: select suppplemental_log_data_min fromv$database; If supplemental logging is enabled, the returned value will beYES or IMPLICIT.

v Table level supplemental logging—InfoSphere CDC also requires fullsupplemental logging at the table level for those tables you have selected forInfoSphere CDC to replicate using the mirroring replication method. Thissupplemental logging is typically handled by InfoSphere CDC, unless you areusing a read-only database connection to the source database. For a read-onlydatabase environment, before configuring subscriptions that involve tables formirroring, ensure that you have sufficient supplemental logging enabled forthose tables. During InfoSphere CDC subscription configuration, the applicationchecks to see if the required logging is enabled. If sufficient table supplementallogging is not enabled, thenInfoSphere CDC will return errors and does notcomplete the configuration. The appropriate setting for table level supplementallogging (by database version) is:– Oracle 9i—enable full supplemental logging with conditional supplemental

log groups.– Oracle 10g or higher— enable full supplemental logging with conditional or

unconditional supplemental log groups.

To enable supplemental logging at the database level and table level, contact yourOracle database administrator. For more information on the command that enablessupplemental logging, see your Oracle documentation.

Enabling InfoSphere CDC to use a bulk load refreshIf you want InfoSphere CDC to use a bulk load refresh when applying data to thetarget database, then you must do the following:1. Install an Oracle Client on the same server where you have installed and

configured InfoSphere CDC. The Oracle Client must be able to connect to theOracle database.

2. Add the same TNS names entry for your database to the tnsnames.ora file andselect this database when configuring InfoSphere CDC.

Setting the database instance to ARCHIVELOG modeInfoSphere CDC requires uninterrupted access to Oracle redo logs. Therefore, youmust enable the archiving of Oracle redo logs. Make sure that the source databaseinstance is operating in ARCHIVELOG mode. This lets InfoSphere CDC read datafrom archived Oracle redo logs instead of online redo logs, in the event thatexcessive latency occurs during mirroring. To set the source database instance toARCHIVELOG mode, contact your database administrator. You can also verify ifarchive logging is enabled for the source database by issuing the following SQLstatement: select log_mode from v$database; If archive logging is enabled, thereturned value will be instance to ARCHIVELOG mode. For more information, seeyour Oracle documentation. CAUTION: If you do not set the database instance toARCHIVELOG mode, you may experience data loss.

InfoSphere CDC must have direct access to the archive log files. You can installInfoSphere CDC on the same node that has access to the archive log files.However, if your database instance is managed by Oracle Automatic StorageManager (ASM), then you can install InfoSphere CDC any node. Please be awarethat reading archive and redo logs from ASM can be significantly slower than

Before you install 7

Page 14: ISCDC for Oracle

reading the logs through the file system. If the database produces high volumes oflogs, you should consider multiplexing the logs by configuring a log destinationoutside ASM.

Starting the Oracle listenerInfoSphere CDC requires the Oracle listener to connect to the database. You muststart the Oracle listener before installing InfoSphere CDC. For more information onstarting the Oracle listener, see your Oracle documentation.

Setting up a remote connectionIf you want to install InfoSphere CDC and the Oracle database on differentmachines, then you must setup a connection to the remote machine (where theOracle database is installed) using SQL*Net.

See also:“To setup a remote connection”

To setup a remote connection1. Ensure you have installed an Oracle client on the local server and have added

the TNS names entry to the tnsnames.ora file.2. Ensure you have installed and configured an instance of InfoSphere CDC on

the local server. When configuring InfoSphere CDC, you must specify the sameTNS names entry.

3. Ensure you have started InfoSphere CDC.4. At the command line on the local server, mount the archive log path from the

remote server:mount <host>:<ArchiveLogDirectory> <local_archive_log>

where:v <host> is the name of the remote server where the Oracle database is

installed.v <ArchiveLogDirectory> is the absolute path of the archive log directory on

the remote server.v <local_archive_log> is the mount point on the local server where InfoSphere

CDC is installed.5. If the absolute paths of the directories containing the archive logs differ

between the local server and the remote server, add themirror_archive_log_directory system parameter in Management Console:

6. Set the value of this system parameter to match the mount point on the localserver.

7. At the command line on the local server, mount the redo log path from theremote server:mount <host>:<OnlineLogDirectory> <local_online_log>

where:v <host> is the name of the remote server where the Oracle database is

installed.v <OnlineLogDirectory> is the absolute path of the online Redo Log directory

on the remote server.v <local_archive_log> is the mount point on the local server where InfoSphere

CDC is installed.

8 InfoSphere Change Data Capture: End-User Documentation

Page 15: ISCDC for Oracle

8. If the absolute paths of the directories containing the online logs differ betweenthe local server and the remote server, add the mirror_online_log_directorysystem parameter in Management Console:

9. Set the value of this system parameter to match the mount point on the localserver.

Before you install 9

Page 16: ISCDC for Oracle

10 InfoSphere Change Data Capture: End-User Documentation

Page 17: ISCDC for Oracle

Installing InfoSphere CDC

This section provides step-by-step instructions on how to install InfoSphere CDC.

If you are installing a fix pack, you must already have an installation of InfoSphereCDC in order to successfully complete the installation.

Note: When upgrading to InfoSphere CDC version 6.5, you must also upgradeboth Management Console and Access Server to version 6.5.

In this section, you will learn:“To install InfoSphere CDC (UNIX and Linux)”“To override the locale for the installation (UNIX and Linux)” on page 12“InfoSphere CDC and Automatic Storage Management (ASM)” on page 12“Installing InfoSphere CDC using a silent installation” on page 12

Related concepts

“Before you install” on page 5

To install InfoSphere CDC (UNIX and Linux)

Note the following before you install or upgrade InfoSphere CDC on UNIX orLinux:v Do not install or upgrade InfoSphere CDC as a root user.v The installation directory requires file system permissions of 600 if you plan on

using the same user account to install the product, create and configureinstances, or upgrade the product.

v The installation directory requires file system permissions of 660 if you plan onusing different user accounts to install the product, create and configureinstances, or upgrade the product.

1. Log on to the account you set up for InfoSphere CDC.2. Copy the InfoSphere CDC installation file for your UNIX or Linux platform

from the InfoSphere CDC CD-ROM or download it from the InfoSphere CDCweb site.

3. Make the installation binary file executable.4. Run the installation program by typing the following command:

./<installation_binary_name>.bin

If you already have InfoSphere CDC installed, the installation program willprompt you to upgrade.

5. Press Enter on the Introduction screen to display the license agreement.Follow the instructions on the screen to navigate through the licenseagreement.

6. To accept the license agreement, type 1.7. Type the absolute path to your installation directory or press Enter to accept

the default.

Note: The directory that you specify must be owned by the account you areusing for the installation. If the installation program cannot create thedirectory, you are prompted to specify a different directory.

© Copyright IBM Corp. 2008, 2010 11

Page 18: ISCDC for Oracle

8. Review the installation summary. Press Enter to start the installation.9. After completing the installation, InfoSphere CDC gives you the option of

launching the configuration tool for InfoSphere CDC.10. Type 1 to launch the configuration tool.

Note: If you have X-Windows installed, the installation program will launch theconfiguration tool in a graphical environment.Related concepts

“Configuring InfoSphere CDC (UNIX and Linux)” on page 21

To override the locale for the installation (UNIX and Linux)

Use the following procedure to override the locale for the installer. English andJapanese are supported.1. Navigate to the directory that contains the InfoSphere CDC installation file.2. Start the installer with the following flags to override the locale of the

installation:v English—<installation_file_name>.bin -l en

v Japanese—<installation_file_name>.bin -l ja

where:v <installation_file_name> is the name of the installation file.

After the installation is complete, you have the option of launching the InfoSphereCDC configuration tool. The configuration tool will use the locale settings for yoursystem.

InfoSphere CDC and Automatic Storage Management (ASM)If you are using ASM to manage your database instance, then the InfoSphere CDCinstallation program prompts you for log in information for the ASM instance (thename of the ASM user and password). The ASM user must have database SYSDBAprivileges to log into ASM.

Installing InfoSphere CDC using a silent installationA silent installation allows you to automatically install InfoSphere CDC byspecifying a command with various parameters. You can use this type ofinstallation method for large-scale deployments of InfoSphere CDC by embeddingthe silent installation command in a script.

See also:“To perform a silent installation of InfoSphere CDC (UNIX and Linux)”

To perform a silent installation of InfoSphere CDC (UNIX andLinux)

1. Log on to the account you set up for InfoSphere CDC.2. Copy the InfoSphere CDC installation binary from the InfoSphere CDC

CD-ROM or download it from the InfoSphere CDC Web site.3. Make the installation binary executable.4. Install InfoSphere CDC and generate a response file with the following

command:

12 InfoSphere Change Data Capture: End-User Documentation

Page 19: ISCDC for Oracle

<installation_binary_name> -r <response-file>

where:v <response-file> is the full path to the installation file.

5. On another system, perform the silent installation by running the followingcommand:<installation_binary_name> -i silent -f <response-file>

where:v <response-file> is the full path to the installation file.

Related tasks

“To install InfoSphere CDC (UNIX and Linux)” on page 11

Installing InfoSphere CDC 13

Page 20: ISCDC for Oracle

14 InfoSphere Change Data Capture: End-User Documentation

Page 21: ISCDC for Oracle

Upgrading Transformation Server for Oracle to InfoSphereCDC for Oracle

There is no direct upgrade from Transformation Server® for Oracle version 6.0(Service Pack 3 TFE 28 and later) to InfoSphere CDC for Oracle version 6.5. Youmust install InfoSphere CDC for Oracle version 6.5 on the same database serverwhere your existing installation of Transformation Server resides. The databaseserver must be the same so that you can transfer existing subscriptions fromTransformation Server to InfoSphere CDC instance. After a successful installationof InfoSphere CDC for Oracle version 6.5, you can transfer and upgradesubscriptions in Management Console.

Earlier versions of the software must first be upgraded to Transformation Serverfor Oracle version 6.0 Service Pack 3 TFE 28 before attempting a migration toInfoSphere CDC for Oracle version 6.5.

In this section, you will learn:“To upgrade from Transformation Server for Oracle to InfoSphere CDC forOracle”

To upgrade from Transformation Server for Oracle to InfoSphere CDCfor Oracle

1. Ensure you have an existing installation of Transformation Server for Oracleversion 6.0 (Service Pack 3 and later) on a database server.

2. Install InfoSphere CDC for Oracle version 6.5 on the same database serverwhere you have installed Transformation Server for Oracle version 6.0 (ServicePack 3 TFE 28 and later).

3. Ensure both instances of Transformation Server for Oracle and InfoSphere CDCare started.

4. End any active replication.5. Upgrade existing subscriptions and transfer existing bookmarks from

Transformation Server for Oracle version 6.0 (Service Pack 3 TFE 28 and later)to InfoSphere CDC for Oracle version 6.5 in Management Console. For moreinformation, see Upgrading existing Transformation Server subscriptions toInfoSphere CDC in your Management Console documentation.

Related reference

“dmts64 - Start InfoSphere CDC” on page 74“dmts32 - Start InfoSphere CDC” on page 74“dmendreplication - End replication” on page 40

© Copyright IBM Corp. 2008, 2010 15

Page 22: ISCDC for Oracle

16 InfoSphere Change Data Capture: End-User Documentation

Page 23: ISCDC for Oracle

Installing InfoSphere CDC in an Oracle Real ApplicationClusters (RAC) environment

To deploy InfoSphere CDC in an Oracle RAC environment, you can install theproduct on one node in the cluster or on a separate machine outside of the cluster.In both scenarios you must install InfoSphere CDC on a shared storage device andInfoSphere CDC must have access to all archived and online redo log filesgenerated by all nodes in the cluster. Installing the product on a machine outsideof your RAC environment is the optimum configuration for failover scenarioswhere a node may fail.

To integrate InfoSphere CDC into your RAC environment, you must first define anOracle service for the RAC environment in the tnsnames.ora file and then selectthis service when creating an instance of InfoSphere CDC for your RACenvironment in the configuration tool. You must also create a failover script thatautomates several InfoSphere CDC commands.

An overview of InfoSphere CDC configuration in a RAC environment (withActive-Passive configuration) is provided in the following diagram:

© Copyright IBM Corp. 2008, 2010 17

Page 24: ISCDC for Oracle

Behavior of InfoSphere CDC in a RAC environment

InfoSphere CDC queries the v$archived_log and v$log Oracle views to locate thedatabase log files and attempts to access the files in the first log destination asdefined in your Oracle database. If the logs are unavailable in the first destination,the product proceeds to the next destination until it finds the required files. Toavoid latency, configure your Oracle database so that the first destination containsthe required log files.

InfoSphere CDC replicates data from all RAC nodes at once and the stream of datafrom individual nodes is sorted (to account for data that is scrambled by logparallelism) and merged together for transaction consistency. InfoSphere CDC doesnot replicate data if the main node is closed. While replicating data, InfoSphereCDC opens connections to the source database and if these connections are closedfor any reason, InfoSphere CDC stops replication.

InfoSphere CDC takes approximately 21 seconds to detect that a node has failed.After the node fails, InfoSphere CDC continues to replicate data if the OracleCluster Ready Services (CRS) is running and recovers and finalizes the online logsfrom the failed node. InfoSphere CDC ensures data integrity when replicating datafrom all other nodes in your RAC environment. Once the node is restored,InfoSphere CDC automatically starts replicating from the restored node. If yourRAC nodes have an unbalanced load, InfoSphere CDC may experience a latency ofseveral times the Oracle checkpoint interval (3 seconds).

Note:

If you are using ASM to manage your database instance and redo log files, thenyou must ensure that you have specified the Oracle SID of the local node whereInfoSphere CDC is installed. You can specify the Oracle SID in the InfoSphere CDCconfiguration tool when you are prompted for the TNS name. The configurationtool can be launched from the command line by issuing the dmconfiguretscommand.

In this section, you will learn:“Defining a service for InfoSphere CDC in tnsnames.ora”“Creating a failover script for InfoSphere CDC in an Oracle RAC environment”on page 19

Related concepts

“Installing InfoSphere CDC” on page 11

Defining a service for InfoSphere CDC in tnsnames.ora

Define a service in the tnsnames.ora file that will be used by InfoSphere CDC toconnect to your RAC environment. For example:CDCSID =

(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = racsystemvip)(PORT = 1521))(CONNECT_DATA =

(SERVER = DEDICATED)(SERVICE_NAME = racsid.racsystem.com)(INSTANCE_NAME = instancesid)

))

18 InfoSphere Change Data Capture: End-User Documentation

Page 25: ISCDC for Oracle

Where:v racsystemvip—virtual IP for your RAC environment.v racsid.racystem.com—service name for your RAC environment.v instancesid—unique name of this instance in your RAC environment.

When creating an InfoSphere CDC instance for your RAC environment in theInfoSphere CDC configuration tool, select the service that you defined in thisprocedure when prompted to select a TNS. You must select a single node(considered the main node by InfoSphere CDC), not the entire RAC instance.Related concepts

“Installing InfoSphere CDC in an Oracle Real Application Clusters (RAC)environment” on page 17“Installing InfoSphere CDC” on page 11Related tasks

“To add a new instance of InfoSphere CDC (UNIX and Linux)” on page 21“Creating a failover script for InfoSphere CDC in an Oracle RAC environment”

Creating a failover script for InfoSphere CDC in an Oracle RACenvironment

If an Oracle RAC node fails but the machine containing the node is stillresponsive, develop a recovery script for InfoSphere CDC that automates thefollowing actions:v Stops replication on all subscriptions with the dmendreplication command.v Shuts down all InfoSphere CDC processes with the dmshutdown command.v Modifies the INSTANCE_NAME parameter in the tnsames.ora file to point to the

next available RAC node.v If required, restarts the Oracle service listener.v Deletes the following staging area files in the InfoSphere CDC installation

directory:– <instance_name>/conf/txq*

– <instance_name>/stagingstore/*

– <instance_name>/tmp/*

v Restarts your InfoSphere CDC instance on a different RAC node with the dmts32or dmts64 commands.

v Restarts replication on all subscriptions with the dmstartmirror command.Related concepts

“Installing InfoSphere CDC in an Oracle Real Application Clusters (RAC)environment” on page 17Related tasks

“Defining a service for InfoSphere CDC in tnsnames.ora” on page 18Related reference

“dmendreplication - End replication” on page 40“dmshutdown - Shut down InfoSphere CDC” on page 70“dmts32 - Start InfoSphere CDC” on page 74“dmts64 - Start InfoSphere CDC” on page 74“dmstartmirror - Start mirroring” on page 45

Installing InfoSphere CDC in an Oracle Real Application Clusters (RAC) environment 19

Page 26: ISCDC for Oracle

20 InfoSphere Change Data Capture: End-User Documentation

Page 27: ISCDC for Oracle

Configuring InfoSphere CDC (UNIX and Linux)

After installing InfoSphere CDC, the installation program launches a configurationtool. The configuration tool allows you to configure one or more InfoSphere CDCinstances for your environment. You must configure InfoSphere CDC before youcan start replication.

In this section, you will learn:“Configuring InfoSphere CDC instances (UNIX and Linux)”

Configuring InfoSphere CDC instances (UNIX and Linux)You can add, edit, or delete an instance of InfoSphere CDC. Use the InfoSphereCDC configuration tool to work with instances. You do not have to start and stopinstances.

Before you add, edit, or delete an instance, ensure logging is turned on for eachdatabase from which you intend to capture data changes.

See also:“To add a new instance of InfoSphere CDC (UNIX and Linux)”“To edit an instance of InfoSphere CDC (UNIX and Linux)” on page 22“To delete an instance of InfoSphere CDC (UNIX and Linux)” on page 23

To add a new instance of InfoSphere CDC (UNIX and Linux)

If you are configuring the first instance of InfoSphere CDC after installation, youcan proceed to Step 2 of this procedure.1. At the command prompt, launch the configuration tool by issuing the

following command in the specified directory:\<InfoSphere CDC Installation Directory>\bin\dmconfigurets

2. At the welcome message, press Enter to continue.3. Type the name of the instance and press Enter to add a new instance of

InfoSphere CDC.4. Type the port number which InfoSphere CDC uses for communication with

client workstations running Management Console and other servers.InfoSphere CDC displays a default port of 11001. Press Enter.

Note: This port number cannot be used by other applications installed on thesame server. You will use this port number when specifying access parametersfor your datastore in the Access Manager perspective in Management Console.For more information, see your Management Console documentation.

Note: For more information on the port requirements for InfoSphere CDC, see“Port requirements” on page 4.

5. If you are using the auto-discovery feature in Access Manager, then enable thethis feature by typing the UDP port number that you set in Access Server. Thedefault port is 2222. InfoSphere CDC uses this UDP port number forauto-discovery broadcasts sent from Access Server. Otherwise, press Enter todisable.

© Copyright IBM Corp. 2008, 2010 21

Page 28: ISCDC for Oracle

6. Depending on the bit version of your server, type 32 or 64 and press Enter.7. Type the amount of physically available RAM that you want to allocate for

this instance of InfoSphere CDC and press Enter. By default, the configurationtool allocates 512 MB of RAM for each 32-bit instance and 1024 MB of RAMfor each 64-bit instance.

Note: Using values other than the defaults or allocating more RAM than isphysically available on your server should only be undertaken afterconsidering the impacts on product performance.

8. If you want to connect to a read-only source database, then type y. If you usea database with read-only privileges, in the step 12, specify the read-only userfor that database. If you want read and write access, then type n.

Note: Once you have created the instance, this option is set and you cannotconnect to a source database with read and write access.

9. Type the path of the Oracle database you want to replicate data to or fromand contains all of the tables for replication. This is the database that youconfigured as part of the pre-installation tasks. Press Enter.

10. Select the TNS name for your Oracle database that you defined in thetnsnames.ora file.If you are configuring an instance for an Oracle RAC environment, considerthe following:v With non-ASM managed redo log files, select the Oracle service name that

you defined in tnsnames.ora.v With ASM-managed redo log files, select the Oracle SID of the local node

where InfoSphere CDC is installed.11. If you want to specify extra JDBC parameters, then type y.12. Type the user name (case-sensitive) for the specified database and press Enter.13. Type the password (case-sensitive) for the specified database and press Enter.

The configuration tool will now search the database for schemas.14. Type the number that corresponds to the database schema used by InfoSphere

CDC for metadata tables and press Enter. You can specify any schema exceptthose in use by other installed instances of InfoSphere CDC for the givendatabase.

Note: InfoSphere CDC metadata tables contain important configurationinformation and should be backed up as part of your database backupstrategy.

15. The configuration tool creates the InfoSphere CDC instance and prompts youto start the instance. Type y to start the instance.

Note: The configuration tool will prompt you if your configuration is about tooverwrite the metadata for an existing instance.

Related reference

“dmbackupmd - Backup Metadata” on page 68

To edit an instance of InfoSphere CDC (UNIX and Linux)1. Stop InfoSphere CDC if it is started by using the dmshutdown command.2. At the command prompt, launch the configuration tool by issuing the following

command from the <InfoSphere CDC Installation Directory>/bin directory:./dmconfigurets

22 InfoSphere Change Data Capture: End-User Documentation

Page 29: ISCDC for Oracle

3. Type 1 and press Enter to list the installed instances of InfoSphere CDC. Recordthe name of the instance you want to modify.

4. Type 3 and press Enter to modify an instance of InfoSphere CDC.5. Type the instance name that you want to modify and press Enter.

The configuration tool allows you to edit a number of values that you specifiedwhen adding an instance.

6. After making your changes, type 5 and press Enter to apply your changes andreturn to the main menu. Type 6 and press Enter to discard your changes.

To delete an instance of InfoSphere CDC (UNIX and Linux)1. Stop InfoSphere CDC if it is started by using the dmshutdown command.2. At the command prompt, launch the configuration tool by issuing the following

command from the <InfoSphere CDC installation directory>/bin directory:./dmconfigurets

3. Type 1 and press Enter to list the installed instances of InfoSphere CDC. Recordthe name of the instance you want to delete.

4. Type 4 and press Enter to delete an instance of InfoSphere CDC.5. Type the instance name that you want to delete and press Enter.

Configuring InfoSphere CDC (UNIX and Linux) 23

Page 30: ISCDC for Oracle

24 InfoSphere Change Data Capture: End-User Documentation

Page 31: ISCDC for Oracle

Configuring InfoSphere CDC for OS (operating system)clustering (UNIX and Linux)

InfoSphere CDC supports Active/Passive two-node clusters on the UNIX andLinux platforms. Clustering provides continuous access to resources in the event ofa hardware failure, software failure, or some other interruption.

To implement InfoSphere CDC clustering support in your environment, you mustcomplete all of the following pre-requisite tasks.

Note: Prerequisites that only apply to InfoSphere CDC as a clustered source or aclustered target are specified.v Install InfoSphere CDC on the shared drive of the cluster.v Add a new instance of InfoSphere CDC.v Ensure that the server port you specify during configuration of the instance is

available and persistent on both nodes of the cluster. InfoSphere CDC listens onthis port.

v Ensure that InfoSphere CDC connects to the database in the same way on bothnodes of the cluster. In other words, database connection parameters such as thepath to the database and services must be identical on both nodes of the cluster.

v Ensure that all of the database logs required for replication are available. Thisprerequisite only applies to InfoSphere CDC as a clustered source.

v Ensure that the path to the database logs required for replication is identical onboth nodes of the cluster. This prerequisite only applies to InfoSphere CDC as aclustered source.

v Ensure that every InfoSphere CDC source that connects to the target sees thetarget in the same way. The target must have a clustered IP address or use thesame host name for both nodes of the cluster. This prerequisite only applies toInfoSphere CDC as a clustered target.

v Optionally, schedule a regular backup of your InfoSphere CDC metadata andevent log messages. Note that metadata will only change when you add ormodify subscriptions. You can find more information about this prerequisite inthe failover procedure for InfoSphere CDC in this section.

Note: You can run the dmshowlogdependency command with the –i flag to listthe database logs required for replication.

In this section, you will learn:“Performing a forced or manual failover of InfoSphere CDC” on page 26“Preparing for a failover of InfoSphere CDC” on page 26

© Copyright IBM Corp. 2008, 2010 25

Page 32: ISCDC for Oracle

Related concepts

“Configuring InfoSphere CDC instances (UNIX and Linux)” on page 21Related tasks

“To install InfoSphere CDC (UNIX and Linux)” on page 11

Performing a forced or manual failover of InfoSphere CDC

A forced or manual failover is often necessary in a clustered environment forsoftware upgrades, maintenance, or other reasons. The tasks in the following stepsmust be included in your manual failover script.1. Stop all instances of InfoSphere CDC on the current active node with the

following command:dmshutdown -I <instance_name>

2. Manually failover your clustered environment with the scripts or proceduresthat are specific to your environment.

3. Restart all instances on the new active node with the following commands for32-bit and 64-bit operating systems:dmts32 - I <instance_name> or dmts64 - I <instance_name>

4. Start all subscriptions on the new active node with the dmstartmirrorcommand.

Related concepts

“Starting InfoSphere CDC” on page 29“Stopping InfoSphere CDC” on page 29Related tasks

“Preparing for a failover of InfoSphere CDC”Related reference

“dmstartmirror - Start mirroring” on page 45

Preparing for a failover of InfoSphere CDC

To prepare for a failover such as a hardware or software failure, your clusteringenvironment will require a script that performs InfoSphere CDC tasks on the newactive node. The tasks in the following steps must be included in your failoverscript.1. Clean the transaction queues for each instance by removing all files that begin

with txqueue* in the <InfoSphere CDC installation directory>/instance/<instance name>/conf directory.

2. Back up your metadata for each instance by archiving all files that begin withmd* in the <InfoSphere CDC installation directory>/instance/<instancename>/conf directory. If the metadata database does not recover after a failover,restore these files to the same directory on the new active node. This task isoptional.

3. Back up your Event Log messages for each instance by archiving all files in the<InfoSphere CDC installation directory>/instance/<instance name>/eventsdirectory. If the events database does not recover after a failover, restore thesefiles to the same directory on the new active node. This task is optional.

4. Start each instance on the new active node with the following commands for32-bit and 64-bit operating systems:dmts32 - I <instance_name> or dmts64 - I <instance_name>

26 InfoSphere Change Data Capture: End-User Documentation

Page 33: ISCDC for Oracle

5. Run the dmclearstagingstore command on the new active node for allinstances.

6. Start all subscriptions on the new active node with the dmstartmirrorcommand.

Related concepts

“Starting InfoSphere CDC” on page 29Related tasks

“Performing a forced or manual failover of InfoSphere CDC” on page 26Related reference

“dmclearstagingstore - Remove cached operations from the staging store” on page67“dmstartmirror - Start mirroring” on page 45

Configuring InfoSphere CDC for OS (operating system) clustering (UNIX and Linux) 27

Page 34: ISCDC for Oracle

28 InfoSphere Change Data Capture: End-User Documentation

Page 35: ISCDC for Oracle

After you install and configure

Once you have installed and configured InfoSphere CDC, you can start usingInfoSphere CDC.

In this section, you will learn:“Starting InfoSphere CDC”“Stopping InfoSphere CDC”“Maintaining active TCP connections in a network environment” on page 30“Enabling SQL statements in Management Console” on page 31“Privileges for Oracle DBA and InfoSphere CDC users” on page 31

Starting InfoSphere CDCAfter you install InfoSphere CDC on a supported UNIX or Linux server, you canissue a command to start it so that you can create a datastore for the instance inManagement Console. You can also start the instance by using the configurationtool.

See also:“To start InfoSphere CDC (UNIX and Linux)”

To start InfoSphere CDC (UNIX and Linux)

Depending on the operating system you are running, issue one of the followingstart commands:v dmts32 - I <instance_name>

v dmts64 - I <instance_name>

Stopping InfoSphere CDCIt may be necessary to stop InfoSphere CDC when you want to change theconfiguration settings, take a server or database offline for maintenance purposes,or if you want to upgrade InfoSphere CDC. You can use the configuration tool orcommands to stop InfoSphere CDC.

See also:“To stop InfoSphere CDC (UNIX and Linux)”

To stop InfoSphere CDC (UNIX and Linux)1. End replication on all subscriptions in Management Console. For more

information on how to end replication on subscriptions, see your ManagementConsole documentation.

2. Depending on how you want to stop InfoSphere CDC, issue one of thefollowing stop commands in the bin directory in your InfoSphere CDCinstallation directory:

© Copyright IBM Corp. 2008, 2010 29

Page 36: ISCDC for Oracle

Option Description

dmshutdown -I <instance_name> Use this command to gracefully shut downInfoSphere CDC.

If you have multiple active InfoSphere CDCinstallations on the same UNIX or Linuxserver, and you want to shut them all down,run this command from the installationdirectory for each InfoSphere CDC instance.

dmterminate -I <instance_name> Use this command to terminate allInfoSphere CDC processes for all instancesrunning on a UNIX or Linux server. Use thiscommand when you cannot completely shutdown InfoSphere CDC using the dmshutdowncommand.

Maintaining active TCP connections in a network environmentIf your deployment of InfoSphere CDC is in a network environment that uses afirewall, VPN gateway, or local system tools to detect idle TCP connections, it maybe necessary to configure the product to prevent these connections from beingclosed during periods of application inactivity between the source and target.

By default, InfoSphere CDC sends a message over TCP connections every 20seconds to ensure these connections remain active during periods of inactivity. Ifyour network policies close TCP connections for idle periods of less than 20seconds, you must change the configuration of each instance of InfoSphere CDC toensure the TCP connections remain open.

See also:“To maintain active TCP connections”

To maintain active TCP connections1. For each instance of InfoSphere CDC, navigate to the following directory:

UNIX or Linux:<CDC_installation_directory>/instance/<instance_name>/conf

2. Open the comms.ini file in a text editor.3. Change the KEEP_ALIVE_TIMEOUT parameter to a value that is lower than

the time used to detect idle connections in your network. For example, if yournetwork disables idle TCP connections after 15 seconds, you can change theKEEP_ALIVE_TIMEOUT parameter to a value of 10 seconds:KEEP_ALIVE_TIMEOUT=10

4. Save the comms.ini file.5. For the changes to take effect, use the configuration tool to restart all instances

of InfoSphere CDC.

InfoSphere CDC will now send messages over the TCP connection every 10seconds.

30 InfoSphere Change Data Capture: End-User Documentation

Page 37: ISCDC for Oracle

Enabling SQL statements in Management ConsoleInfoSphere CDC lets you execute SQL statements after it applies a table-level clearor refresh operation to a target table. You can specify SQL statements in theAdditional SQL dialog box in Management Console. By default, this feature isdisabled in InfoSphere CDC for security reasons. You can enable this feature bycreating a table called TS_SQL_EXECAUTH in the database where you installedInfoSphere CDC. The structure of the table is unimportant, and you must createthe table using the same schema as the metadata tables during the configuration ofInfoSphere CDC. For more information about specifying SQL statements inManagement Console, see Specifying SQL to control refresh operations in yourManagement Console documentation.

See also:“To enable SQL statements in Management Console”

To enable SQL statements in Management Console1. Locate the database on the target server that you created for InfoSphere CDC.

Depending on how you are using InfoSphere CDC, this is the database youwant InfoSphere CDC to replicate to or from.

Note: During installation, InfoSphere CDC places metadata tables in thedatabase necessary for InfoSphere CDC processes.

2. If you want to enable the specification of SQL statements, create a table namedTS_SQL_EXECAUTH in the database.

Note: The table can have any structure and must be created in the schema youspecified when you configured InfoSphere CDC.

Related concepts

“Metadata tables” on page 37

Privileges for Oracle DBA and InfoSphere CDC usersAfter installing and configuring InfoSphere CDC on Oracle, you also need to setprivileges for the Oracle DBA and users.

See also:“Privileges required by the Oracle DBA”“Privileges required by users” on page 32

Privileges required by the Oracle DBAThe Oracle DBA must be explicitly granted SELECT privileges on the followingdynamic system views with the grant option:v sys.all_coll_typesv sys.all_constraintsv sys.all_cons_columnsv sys.all_type_attrsv sys. attrcol$v sys.ccol$v sys.cdef$v sys.col$

After you install and configure 31

Page 38: ISCDC for Oracle

v sys.coltype$v sys.dba_constraintsv sys.dba_cons_columnsv sys.dba_indexesv sys.dba_ind_columnsv sys.dba_mviewsv sys.dba_objectsv sys.dba_profilesv sys.dba_rolesv sys.dba_rollback_segsv sys. dba_sequencesv sys.dba_tablesv sys.dba_tablespacesv sys.dba_tab_columnsv sys.dba_usersv sys.hist_head$v sys.icol$v sys.ind$v sys.lob$v sys.nls_database_parametersv sys.obj$v sys.resource_costv sys.tab$v sys.user$v sys.user_role_privsv sys.v_$archived_logv sys.v_$controlfilev sys.v_$databasev sys.v_$logv sys.v_$logfilev sys.v_$log_historyv sys.v_$mystatv sys.v_$sessionv sys.v_$version

Privileges required by usersThe installation program grants Oracle DBA privileges to the InfoSphere CDC userand these include the privileges required users to work with InfoSphere CDC forOracle. However, if you decide to alter these DBA privileges or revoke the DBArole from the InfoSphere CDC user, then you must grant specific privileges so thatusers can replicate data and perform table operations.

See also:“Operation privileges” on page 33“View privileges” on page 33

32 InfoSphere Change Data Capture: End-User Documentation

Page 39: ISCDC for Oracle

Operation privilegesBy default, the installation program grants the Oracle DBA role to the user andthese include the privileges required for users to perform required operations.However, if you decide to alter these DBA privileges or revoke the DBA role fromthe user, then you must grant the following privileges so that users can performrequired operations.

Note: For privileges that specify ANY TABLE, you may choose to grant privilegesonly on a specific table. As tables get added to the InfoSphere CDC configuration,you may need to monitor the tables on which users have privileges.

Privilege Required For

CREATE ANY INDEX Creating tables on the target for a user otherthan the InfoSphere CDC user.

CREATE ANY TABLE Creating tables that belong to a user otherthan the InfoSphere CDC user.

DELETE ANY TABLE Replicating to tables that belong to a userother than the InfoSphere CDC user.

EXECUTE ANY PROCEDURE Executing stored procedures that belong to auser other than the InfoSphere CDC user.

INSERT ANY TABLE Replicating to tables that belong to a userother than the InfoSphere CDC user.

LOCK ANY TABLE Refresh target tables that belong to a userother than the InfoSphere CDC user.

SELECT ANY TABLE Use tables that belong to a user other thanthe InfoSphere CDC user.

UPDATE ANY TABLE Replicate to tables that belong to a userother than the InfoSphere CDC user.

View privilegesUsers requires special privileges on the following views:v dba_col_commentsv dba_constraintsv dba_cons_columnsv dba_indexesv dba_ind_columnsv dba_log_groupsv dba_objectsv dba_sys_privsv dba_tablesv dba_tab_columnsv dba_tab_commentsv dba_tab_privsv and dba_users

These views are equivalent to the all_views (for example all_col_comments andall_constraints) but the all_views exclude those tables for which the user executinga query does not have permissions. This filtering imposes a noticeable performancecost on systems with large numbers of tables and users.

After you install and configure 33

Page 40: ISCDC for Oracle

You must grant users SELECT privileges on the following dynamic system viewswith the grant option:v dba_tab_colsv sys.con$v sys.v_$transactionv sys.v_$archived_logv sys.v_$databasev sys.v_$controlfilev sys.v_$logv sys.v_$log_historyv sys.v_$logfilev sys.v_$mystatv sys.v_$sessionv sys.v_$versionv sys.all_coll_typesv sys.all_cons_columnsv sys.all_constraintsv sys.all_type_attrsv sys.dba_constraintsv sys.dba_cons_columnsv sys.dba_indexesv sys.dba_ind_columnsv sys.dba_mviewsv sys.dba_objectsv sys.dba_profilesv sys.dba_rolesv sys.dba_rollback_segsv sys.dba_sequencesv sys.dba_tab_columnsv sys.dba_tablesv sys.dba_tablespacesv sys.dba_usersv sys.nls_database_parametersv sys.resource_costv sys.attrcol$, sys.ccol$v sys.cdef$, sys.col$v sys.coltype$v sys.hist_head$v sys.icol$v sys.ind$v sys.lob$v sys.obj$v sys.tab$v sys.user$v uuser_role_privs

34 InfoSphere Change Data Capture: End-User Documentation

Page 41: ISCDC for Oracle

For information about privileges and the grant command, see your Oracledocumentation.

After you install and configure 35

Page 42: ISCDC for Oracle

36 InfoSphere Change Data Capture: End-User Documentation

Page 43: ISCDC for Oracle

Metadata tables

InfoSphere CDC maintains a set of metadata tables that represent data about yourcurrent replication configuration. These tables are created in the schema anddatabase that you specify in the configuration tool and should be part of thebackup strategy for your database. InfoSphere CDC will not replicate these tables.Do not modify the contents of these tables unless requested to do so by your IBMrepresentative.

The names of the metadata tables created by InfoSphere CDC are as follows:v DRSESSIONHISTORYv TS_AUTH

Note: For all users you added in the Access Manager perspective inManagement Console, make sure you give GRANT SELECT privileges to theTS_AUTH metadata table. For more information on how to add users in theAccess Manager perspective in Management Console. For more information, seeyour Management Console documentation.

v TS_BOOKMARKv TS_CONFAUD—The conflict resolution audit table records information about

conflicts that were resolved using conflict detection and resolution.Related concepts

“Configuring InfoSphere CDC (UNIX and Linux)” on page 21

© Copyright IBM Corp. 2008, 2010 37

Page 44: ISCDC for Oracle

38 InfoSphere Change Data Capture: End-User Documentation

Page 45: ISCDC for Oracle

Commands for InfoSphere CDC

This section discusses the commands available with InfoSphere CDC. Using thesecommands you can control replication, manage your tables for replication, monitorreplication, and perform various other tasks.

In this section, you will learn:“Using the InfoSphere CDC commands”“Setting the TSINSTANCE environment variable” on page 40“Controlling replication commands” on page 40“Database transaction log commands” on page 47“Managing tables for replication commands” on page 53“Monitoring replication commands” on page 60“Exporting and importing configuration commands” on page 63“Continuous Capture and staging store commands” on page 65“Other commands” on page 67

Using the InfoSphere CDC commandsYou can issue InfoSphere CDC commands at a command line prompt or as part ofa batch file or shell script. Commands are case-sensitive and are located in the bindirectory of your InfoSphere CDC installation directory. You must run thecommands from this directory.

Note: Use the -? flag to list the available parameters for a command and a shortdescription of each parameter. For example, dmstartmirror -?.

Command formats

For each command, the following items of information are provided:v Syntax—Identifies the name of the command and lists the command parameters.v Parameters—Describes each parameter in the command and identifies the values

that can be specified.v Result—Indicates the values that are returned by the command if it is

successful. These values can be useful for scripting. This section also specifiesthe information that is displayed on the screen, if any, as a result of executingthe command.

v Examples—Provides one or more examples of invoking the command.

Parameter formats

Note the following conventions in the definition of the command parameters:v Angle brackets ( < > ) indicate a mandatory parameter.v Square brackets ( [ ] ) indicate an optional parameter. If you omit the parameter,

InfoSphere CDC uses a default value.v A vertical bar ( | ) separating one or more parameters indicate that only one of

the parameters in the list can be used. When one or more vertical bars appear in

© Copyright IBM Corp. 2008, 2010 39

Page 46: ISCDC for Oracle

a list of parameters that is enclosed by square brackets [ ], the choices arelimited to the parameters in the list, but you have the option to not specify anyof the parameters.

v Ellipsis ( ... ) means that a parameter or option can be repeated more than once.v Unless otherwise noted, the commands apply to UNIX and Linux.

Setting the TSINSTANCE environment variableBefore using InfoSphere CDC commands, you can set the TSINSTANCE environmentvariable to the name of your InfoSphere CDC instance.

After you set the TSINSTANCE environment variable, you no longer have to specifythe instance name when issuing commands.

UNIX and Linux

The following command is for kshell. You can run similar commands in othershells:export TSINSTANCE=<instance_name>

where:v <instance_name> is the name of your InfoSphere CDC instance.

Controlling replication commandsThis section contains commands that control replication in InfoSphere CDC.

See also:“dmendreplication - End replication”“dmrefresh - Refresh subscription” on page 44“dmstartmirror - Start mirroring” on page 45

dmendreplication - End replication

Use this command to end refresh or mirroring on the specified subscriptions.

Ending replication allows you to prepare for transitional activities in your businessenvironment and allows you to move to the next step in your business processes.Here are some examples of transitional activities in your business environment thatmay require an end to replication:v Initiating a database backup.v Performing a regularly scheduled reboot of your source database server.v Quiescing your database in preparation for an upgrade.v Weekly batch processing has just completed.v Preparing for off-line maintenance activities.

If you are replicating data continuously with Continuous mirroring and businessreasons arise that require an end to replication, InfoSphere CDC provides multipleoptions that suit most business needs. If your business requirements dictate thatreplication must end at a particular point in your source database log because thetarget database must be in a known state when replication ends, you can choosefrom the following Scheduled End to replication options:

40 InfoSphere Change Data Capture: End-User Documentation

Page 47: ISCDC for Oracle

v -se parameter—When specified without –t or –p, this parameter ends replicationat the current time in the source database log.

v -t parameter—When specified with –se, this parameter ends replication at auser-specified date and time.

v -p parameter—When specified with –se, this parameter ends replication at auser-specified log position.

An example of a scenario that might require these options is that you arepopulating a reporting instance and you need stable (non-changing) data in yourreporting instance during the day. At the end of the day when you shut downyour application, you can choose one of the Scheduled End (Net Change) optionsto update the reporting instance with data from the current day as well.

If business requirements do not require a specific end point but do require a timeframe for ending replication, InfoSphere CDC provides escalating options (Normal,Immediate, and Abort) that end replication more rapidly at the expense of aslower start when resuming replication. For example, a routine end to replicationwith no particular urgency may require the Normal option, whereas a suddenbusiness need to end replication rapidly may require the Abort option. A routinereboot of a SAN might be appropriate for the Normal option, whereas a suddenand unexpected hardware or application failure may require the Abort option.

If you initiate an end to replication and business reasons warrant a change in thedesired time frame, you can reschedule the end of replication by specifying a newdate and time, a new position in the database log, or choose another option forending replication.

Ending replication is also necessary if you want to update and make changes toyour subscription by:v Adding a table mapping to the subscription.v Deleting a table mapping from the subscription.v Temporarily removing a table mapping from the subscription (parking a table).v Modifying mapping details such as source and target column mappings, derived

columns, data translations, row and column selections, user exits, and so on.v Updating the properties of a subscription when the structure of your source or

target tables change.

This command also includes an asynchronous option for scripting (-nw parameter)that can be used with -se to allow your script to continue executing withoutwaiting for the Scheduled End to replication.

You can also start and end replication in Management Console. For moreinformation, see Management Console – Administration Guide.

To stop an instance after ending replication on all subscriptions, use the dmshutdowncommand.

Syntaxdmendreplication -I <INSTANCE_NAME> [-c|-i|-a|-se [-t <date and time>|-p<log position>] [-w|-nw]] <-A|-s <SUBSCRIPTION NAME ...> [-L <locale>]

Commands for InfoSphere CDC 41

Page 48: ISCDC for Oracle

Parameters

-I <INSTANCE_NAME>Specifies the InfoSphere CDC instance for which you want to end replication.Alternatively, you can specify the TSINSTANCE environment variable in placeof this value.

-c Specifies that InfoSphere CDC ends replication on the specified subscriptionswith the Normal option. InfoSphere CDC will use this option by default if youdo not specify –se, -i, or –a.

This option completes in progress work and then ends replication. If a refreshis in progress, Normal will complete the refresh for the current table beforereplication ends.

Normal is the most appropriate option for most business requirements and isthe preferred method for ending replication in most situations.

-i Specifies that InfoSphere CDC ends replication on the specified subscriptionswith the Immediate option.

This option stops all in progress work and then ends replication. Startingreplication after using this option can be slower than using -c. If a refresh is inprogress, the refresh for the current table will be interrupted and thenreplication will end.

Attention: Use this option if business reasons require replication to end fasterthan -c at the expense of a slower start when you resume replication on thespecified subscriptions.

-a Specifies that InfoSphere CDC ends replication on the specified subscriptionswith the Abort option.

This option stops all in progress work and then ends replication rapidly.Starting replication after using this option can be much slower than using -c.A refresh in progress will be interrupted and the target will stop processingany data that has not been committed before replication ends.

Attention: Use this option if your business reasons require a rapid end toreplication and you are willing to tolerate a much slower start when youresume replication on the specified subscriptions.

A sudden business requirement for an unplanned shutdown of your sourcesystem may require this option for ending replication.

-seSpecifies that InfoSphere CDC will end replication normally at the currentsource system time in the source database log with the Scheduled End option.The source system time when replication will end is set when you issue thiscommand.

If you specify the following parameters with -se, replication will end at aspecific date and time or log position:v –t—End replication at a specific date and time in your source database log.v –p—End replication at a specific log position in your source database log.

Note: As latency between the source and target increases, the amount of timerequired to end replication will also increase.

42 InfoSphere Change Data Capture: End-User Documentation

Page 49: ISCDC for Oracle

-t <date and time>Indicates the date and time in the source database log when replication willend when using –se. When specifying a value for this parameter, use thefollowing format:

“yyyy-MM-dd HH:mm”

This parameter is optional when you specify –se.

-p <log position>Indicates that InfoSphere CDC will end replication at the specified Oracle SCNin your source database log when using -se. The following is an example of anSCN decimal format for Oracle:

6091085393

This parameter is optional when you specify –se.

-w Indicates that this command will wait for replication to end when you use –se.–w is the default setting for a Scheduled End to replication.

If you are scripting the command with this parameter, your script must waitfor -se processing to complete before it continues to execute.

Note: This parameter does not apply if you specify –c, -i, or –a. InfoSphereCDC will always wait if you specify –c, -i, or –a when ending replication.

-nwIndicates that this command will not wait for replication to end if you specify-se. If you are scripting this command, this parameter allows your script tocontinue executing (asynchronous) if -se processing is not complete.

-A Indicates that InfoSphere CDC ends replication on all subscriptions.

Use –s to end replication on one or more subscriptions.

-s <SUBSCRIPTION NAME>Indicates the subscriptions where InfoSphere CDC will end replication.

To specify multiple subscriptions, list the subscriptions separated by a space.For example:

Subscription1 Subscription2 Subscription3

You must specify a value for this parameter or use –A for all subscriptions.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isthe locale of the machine where InfoSphere CDC is installed.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmendreplication -I MYINSTANCE -c -s FINANCE

InfoSphere CDC ends replication with the Normal option for the FINANCEsubscription in the specified instance.

dmendreplication -I MYINSTANCE –se –t “2010-02-05-00-00” FINANCE -nw

Commands for InfoSphere CDC 43

Page 50: ISCDC for Oracle

InfoSphere CDC ends replication with the Scheduled End option for the FINANCEsubscription at the specified time in the source database log. The command exitsbefore Scheduled End processing is complete.

dmendreplication -I MYINSTANCE –a –s SUBSCRIPTION1 SUBSCRIPTION2

InfoSphere CDC ends replication with the Abort option for SUBSCRIPTION1 andSUBSCRIPTION2 in the specified instance.

dmrefresh - Refresh subscription

Use this command to refresh the specified subscriptions. When you refresh asubscription, InfoSphere CDC ensures that the target tables are synchronized withthe source tables. Typically, you would refresh target tables when you have set thereplication method to Refresh on your tables.

However, you can also refresh target tables that have a replication method set toMirror and a status of Active or Refresh. When you refresh a table configured formirroring,InfoSphere CDC refreshes the target table so that it is synchronized withthe source table and then marks a table capture point as the starting point formirroring.

This command exits after it has successfully refreshed the specified subscriptions.If you terminate this program while it is still running, InfoSphere CDC endsreplication immediately for the specified subscriptions.

Syntaxdmrefresh -I <INSTANCE_NAME> [-a|-f] <-A|-s <SUBSCRIPTION_NAME ...> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the InfoSphere CDC instance for which you want to refresh one ormore subscriptions. Alternatively, you can specify the TSINSTANCEenvironment variable in place of this value.

-a Specifies that InfoSphere CDC refreshes all target tables in the subscription.

-f Specifies that InfoSphere CDC refreshes only target tables that are flagged forrefresh. If you omit both the -a and -f options, InfoSphere CDC assumes -f bydefault.

-A Specifies that InfoSphere CDC refreshes all subscriptions.

-s <SUBSCRIPTION_NAME>Specifies that InfoSphere CDC refreshes the indicated subscription. To specifymultiple subscriptions, list the subscriptions separated by a space.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

44 InfoSphere Change Data Capture: End-User Documentation

Page 51: ISCDC for Oracle

Examples

dmrefresh -I NEWINSTANCE -a -s FINANCE

InfoSphere CDC refreshes all target tables in the Finance subscription.

dmstartmirror - Start mirroring

Issue this command from your InfoSphere CDC source to start mirroring on thespecified subscriptions. This command starts mirroring for any table with areplication method of Mirror and a status of Refresh or Active. Tables with areplication method of Mirror and a status of Refresh are refreshed before mirroringbegins.

InfoSphere CDC provides two types of mirroring for source tables that are mappedto target tables: Continuous (-c parameter) and Scheduled End (Net Change) (-nparameter). The type of mirroring you select depends on your business needs.

As its name implies, Continuous mirroring replicates changes to the target on acontinuous basis. Use this type of mirroring when business requirements dictatethat you need replication to be running continuously and you do not have aclearly defined reason to end replication at the present time.

Scheduled End (Net Change) mirroring replicates changes (to the target) up to auser-specified point in the source database log and then ends replication. Use thistype of mirroring when business requirements dictate that you only replicate yourdata periodically and you have a clearly defined end point for the state of yourtarget database when replication ends. Scheduled End (Net Change) mirroringallows you to end replication at the following points in your source database log:v -n parameter—When specified without –tor –p, this parameter ends replication

at the current time in the source database log.v -t parameter—When specified with –n, this parameter ends replication at a

user-specified date and time.v -p parameter—When specified with –n, this parameter ends replication at a

user-specified log position.

These user specified end points ensure that your target database is in a knownstate when replication ends.

For more information about starting and ending replication in ManagementConsole, see Management Console – Administration Guide.

Syntaxdmstartmirror -I <INSTANCE_NAME> [-c|-n [-t <date and time>|-p<log position>] [-w|-nw]] <-A|-s <SUBSCRIPTION NAME ...> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the InfoSphere CDC instance for which you want to start mirroring.Alternatively, you can specify the TSINSTANCE environment variable in placeof this value.

-c Specifies that InfoSphere CDC will start Continuous mirroring on the specifiedsubscriptions.

Commands for InfoSphere CDC 45

Page 52: ISCDC for Oracle

If you do not specify –c or -n, InfoSphere CDC will start Continuous mirroringby default on the specified subscriptions.

-n Specifies that InfoSphere CDC mirrors all committed database changes in thesource database and then ends replication normally at the current sourcesystem time in the database log with the Scheduled End option. The sourcesystem time when replication will end is set when you issue this command.

If you specify the following parameters with –n, replication will end at aspecific date and time or log position:v –t—End replication at a specific date and time in your source database log.v –p—End replication at a specific log position in your source database log.

Note: As latency between the source and target increases, the amount of timerequired to end replication will also increase.

-t <date and time>Indicates the date and time in the source database log when replication willend when using –n. When specifying a value for this parameter, use thefollowing format:

“yyyy-MM-dd HH:mm”

This parameter is optional when you specify –n.

-p <log position>Indicates that InfoSphere CDC will end replication at the specified Oracle SCNin your source database log when using -se. The following is an example of anSCN decimal format for Oracle:

6091085393

This parameter is optional when you specify –n.

-w Indicates that this command will wait for replication to end when you use –n.–w is the default setting for a Scheduled End to replication.

If you are scripting the command with this parameter, your script must waitfor -n processing to complete before it continues to execute.

This parameter does not apply if you specify –c for Continuous mirroring.

-nwIndicates that this command will not wait for replication to end if you specify-n. If you are scripting this command, this parameter allows your script tocontinue executing (asynchronous) if -n processing is not complete.

This parameter does not apply if you specify –c for Continuous mirroring.

-A Indicates that InfoSphere CDC starts mirroring for all subscriptions.

Use –s to start mirroring for one or more subscriptions.

-s <SUBSCRIPTION_NAME>Indicates the subscriptions where InfoSphere CDC will start mirroring. Tospecify multiple subscriptions, list the subscriptions separated by a space. Forexample:

Subscription1 Subscription2 Subscription3

You must specify a value for this parameter or use –A for all subscriptions.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isthe locale of the machine where InfoSphere CDC is installed.

46 InfoSphere Change Data Capture: End-User Documentation

Page 53: ISCDC for Oracle

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmstartmirror -I MYINSTANCE c -s FINANCE

InfoSphere CDC starts continuous mirroring for the FINANCE subscription.

dmstartmirror -I MYINSTANCE –n –p “000000FB:000001A4:0001” –nw –A

InfoSphere CDC starts mirroring with the Scheduled End option for allsubscriptions in the specified instance. Replication will end at the specifiedMicrosoft SQL Server LSN in the source database log. The command will not waitfor Scheduled End processing to complete.

dmstartmirror -I MYINSTANCE –n –t “2010-02-05-00-00” FINANCE -nw

InfoSphere CDC starts mirroring with the Scheduled End option for the FINANCEsubscription in the MYINSTANCE instance. Replication will end at the specified timein the source database log. The command will exit before Scheduled Endprocessing is complete.

Database transaction log commandsThis section contains commands that help you manage your database transactionlog or bookmarks.

See also:“dmarchivelogavailable - Mark archive log as available”“dmarchivelogremoved - Mark archive log as removed” on page 48“dmdecodebookmark - Display verbose information bookmark” on page 49“dmsetbookmark - Set bookmark” on page 50“dmshowbookmark - Display bookmark information” on page 51“dmshowlogdependency - Show Log Dependency” on page 51

dmarchivelogavailable - Mark archive log as available

Use this command only after the complete Oracle archive log file has been shippedfrom the system where your Oracle database is installed. By issuing this command,you are indicating to InfoSphere CDC that the shipped Oracle archive log file iscomplete and can now be used for replication.

If your production database is in a RAC environment and the thread ID is notincluded in the archive log file name, you must do the following:v Specify the thread ID in the -t <thread_number> parameter of this command.v Place the archive logs in subdirectories that are named using the thread number.

For example, /archivelog/mycdcsystem/1 for thread 1 and /archivelog/mycdcsystem/2 for thread 2.

Note: This command will return a warning message if you add a file out of order,but will still mark the log as available.

Commands for InfoSphere CDC 47

Page 54: ISCDC for Oracle

Syntaxdmarchivelogavailable -I <INSTANCE_NAME> [-t <thread_number>] -f <filename>

Parameters

-I <INSTANCE_NAME>The name of the InfoSphere CDC instance. You can set the TSINSTANCEenvironment variable to the name of your InfoSphere CDC instance. After thisis complete, you no longer have to specify the instance when issuingcommands.

-t <thread_number>The thread ID of the Oracle archive log. This parameter is optional.

-f <archive_log_file_name>Specify the name (including extension) and the fully qualified path to thearchive log file as it appears in your Oracle production database. For example,you can specify the following value: /archivelog/arch_1_22781.arc

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmarchivelogavailable -t 1 -f /archivelog/arch_1_22781.arc

Indicates to InfoSphere CDC that archive log arch_1_22781.arc with thread ID 1 isnow available for replication.

dmarchivelogavailable -t 1 -f /archivelog/arch_1_22782.arc

Indicates to InfoSphere CDC that archive log arch_1_22782.arc with thread ID 1 isnow available for replication.Related reference

“dmarchivelogremoved - Mark archive log as removed”“dmshowlogdependency - Show Log Dependency” on page 51

dmarchivelogremoved - Mark archive log as removed

Use this command to specify the shipped Oracle archive logs that are no longerused by InfoSphere CDC. You should run this command before removing ashipped Oracle archive log.

Syntaxdmarchivelogremoved -I <INSTANCE_NAME> -f <file name> [-a]

Parameters

-I <INSTANCE_NAME>The name of the InfoSphere CDC instance. You can set the TSINSTANCEenvironment variable to the name of your InfoSphere CDC instance. After thisis complete, you no longer have to specify the instance when issuingcommands.

48 InfoSphere Change Data Capture: End-User Documentation

Page 55: ISCDC for Oracle

-f <file name>Indicates the name (including extension) and the fully qualified path to thearchive log file that you want to remove from InfoSphere CDC replication. Forexample, you can specify the following value: /archivelog/arch_1_22781.arc

-a Indicates that all available logs before and including the log that you specifiedin this command will be removed. This parameter is optional.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Example

dmarchivelogremoved -f /archivelog/arch_1_22781.arc -a

Indicates that archive log arch_1_22781.arc and all previous logs are no longerrequired by InfoSphere CDC for replication and can be removed from the directoryfor shipped archive logs.Related reference

“dmarchivelogavailable - Mark archive log as available” on page 47“dmshowlogdependency - Show Log Dependency” on page 51

dmdecodebookmark - Display verbose information bookmark

Use this command to display verbose information about a bookmark.

Syntaxdmdecodebookmark -I <INSTANCE_NAME> (-b <bookmark> | -f <bookmark_file>)[-d <database_version>] [-L <locale>]

Parameters

-I <INSTANCE_NAME>The name of the InfoSphere CDC instance. You can set the TSINSTANCEenvironment variable to the name of your InfoSphere CDC instance. After thisis complete, you no longer have to specify the instance when issuingcommands.

-b <bookmark>The bookmark as a hexadecimal-encoded string.

-f <bookmark_file>The bookmark file as a binary file.

-d<database_version>The database and version that generated the bookmark specified, if thebookmark was generated by InfoSphere CDC version 6.2 or earlier.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Commands for InfoSphere CDC 49

Page 56: ISCDC for Oracle

Examples

dmdecodebookmark -f bookmark.txt

InfoSphere CDC displays information about the bookmark.txt file.

dmsetbookmark - Set bookmark

Use this command to change the scraping point for a subscription.

Syntaxdmsetbookmark -I <INSTANCE_NAME> -s <SUBSCRIPTION_NAME ...> (-b | -l | -f) [-a][-L <locale>]

Parameters

-I <INSTANCE_NAME>The name of the InfoSphere CDC instance. You can set the TSINSTANCEenvironment variable to the name of your InfoSphere CDC instance. After thisis complete, you no longer have to specify the instance when issuingcommands.

-s <SUBSCRIPTION_NAME>The name of the subscription for which InfoSphere CDC sets a bookmark.

-b <bookmark>Specifies the bookmark which determines the point in the database log whereyou want InfoSphere CDC to resume mirroring. The next time InfoSphere CDCmirrors, it will scrape at the given position. The bookmark is a hex encodedstring that is obtained from the dmshowbookmark command.

-l <bookmark>Bookmark indicating the new scraping point. For more information, contactyour InfoSphere CDC support representative.

-f <bookmark_file>Specifies the binary file containing a bookmark which determines the point inthe database log where you want InfoSphere CDC to resume mirroring. Thenext time InfoSphere CDC mirrors, it will scrape at the given position. Thebookmark file is a binary file that stores the position.

-a Sets all tables in the subscriptions (except for parked tables) as active as of thenew scraping point.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails

Examplesdmsetbookmark -I MYINSTANCE -b 2FC5GJHKLKSJLKJL458K9K809IK9-s FINANCE

50 InfoSphere Change Data Capture: End-User Documentation

Page 57: ISCDC for Oracle

InfoSphere CDC sets a bookmark position on the Finance subscription for thespecified instance. This command specifies that mirroring will resume at theindicated position in the database log.

dmshowbookmark - Display bookmark information

Use this command to view the latest replication position for a subscriptioncommitted on the target.

Syntaxdmshowbookmark -I <INSTANCE_NAME> -s <SOURCE_ID> [-f] [-v] [-L <locale>]

Parameters

-I <INSTANCE_NAME>The name of the InfoSphere CDC instance. You can set the TSINSTANCEenvironment variable to the name of your InfoSphere CDC instance. After thisis complete, you no longer have to specify the instance when issuingcommands.

-s <SOURCE_ID>Specifies the source ID of the subscription for which the bookmark isdisplayed.

[-f] <file_name>Specifies the name of the binary file for the bookmark output.

[-v]Displays verbose information about a bookmark, including ahexadecimal-encoded string. The amount of information displayed depends onthe type and version of the source engine. The hexadecimal-encoded string isalways displayed. It is a subset of what the dmdecodebookmark commanddisplays. If not specified, only a hexadecimal-encoded sting is displayed.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmshowbookmark -I MYINSTANCE -s MASTER

InfoSphere CDC shows bookmark information for the master source ID.

dmshowlogdependency - Show Log Dependency

Use this command to display information about the database logs that are used byInfoSphere CDC and are required for replication. Use this command to implementa log retention policy. With this command you can display the followinginformation:v A list of all the database logs that are required for the specified instance. If you

are shipping your archive logs, a log status is also displayed.

Commands for InfoSphere CDC 51

Page 58: ISCDC for Oracle

v A list of the required database logs that are missing for the specified instance. Ifyou are shipping your archive logs, a log status is also displayed.

v The earliest open transaction in the database log for the specified instance.v The database log that the specified instance of InfoSphere CDC is currently

reading on the source.v The database log for the subscription that the specified instance of InfoSphere

CDC is currently applying on the target.

Syntaxdmshowlogdependency -I <INSTANCE_NAME> (-c | -i | -t | -l | -m)(-s <SUBSCRIPTION_NAME> | -A) [-v] [-L <locale>]

Parameters

-I <INSTANCE_NAME>The name of the InfoSphere CDC instance. You can set the TSINSTANCEenvironment variable to the name of your InfoSphere CDC instance. After thisis complete, you no longer have to specify the instance when issuingcommands.

-c Considers the current position instead of the restart position.

-i Displays the complete list of database logs that are required for the specifiedinstance and are required for replication. These logs are required to startreplication and they contain data that has not yet been applied to the target.

The path to the archive log will be displayed if you are shipping your archivelogs.

This parameter will display the following log status information if you areshipping your archive logs:v Available/Not Available—Status that indicates whether or not the archive

log file is available. You must run the dmarchivelogavailable command tomake archive logs available to InfoSphere CDC.

v Exists/Missing—Status that indicates whether the log file exists or ismissing. If a log file is missing, you will have to adjust your log shippingprocess.

-t Displays the current database log for a subscription that the specifiedInfoSphere CDC instance is currently reading. This is the log containing thecurrent position confirmed by the target.

-l Displays the current source database log that the specified InfoSphere CDCinstance is currently reading. This is the log containing the current scrapingposition.

-m Displays a list of database logs that are missing for the specified instance andare required for replication. These logs must be restored before you can startreplication. If no logs are missing, the output will display 'OK' which you canparse with a script or batch file.

The path to the archive log will be displayed if you are shipping your archivelogs.

This parameter will display the following log status information if you areshipping your archive logs:v Available/Not Available—Status that indicates whether or not the archive

log file is available. You must run the dmarchivelogavailable command tomake archive logs available to InfoSphere CDC.

52 InfoSphere Change Data Capture: End-User Documentation

Page 59: ISCDC for Oracle

v Exists/Missing—Status that indicates whether the log file exists or ismissing. If a log file is missing, you will have to adjust your log shippingprocess.

-s <SUBSCRIPTION_NAME>Specifies the name of the subscription for which you want to display thedatabase log that InfoSphere CDC is currently reading. Use this parameter inconjunction with the -t parameter to display the database log.

-A Specifies all subscriptions in the specified InfoSphere CDC instance.

-v Specifies verbose output (otherwise, the output is formatted for scripting).

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmshowlogdependency -I MYINSTANCE -i -s MYSUBSCRIPTIONNAME

Displays the complete list of database logs that are required for the specifiedinstance and subscription.

dmshowlogdependency -I MYINSTANCE -m -A

Displays the complete list of database logs that are missing for all subscriptions inthe specified instance.Related reference

“dmarchivelogavailable - Mark archive log as available” on page 47“dmarchivelogremoved - Mark archive log as removed” on page 48

Managing tables for replication commandsThis section contains commands that help you manage the tables that you want toreplicate with InfoSphere CDC.

See also:“dmdescribe - Describe source tables” on page 54“dmflagforrefresh - Flag for Refresh” on page 54“dmmarktablecapturepoint - Mark a table capture point on a source table” onpage 55“dmpark - Park table” on page 56“dmreaddtable - Update source table definition” on page 57“dmreassigntable - Update target table definition” on page 58“dmsetreplicationmethod - Set replication method” on page 59

Commands for InfoSphere CDC 53

Page 60: ISCDC for Oracle

dmdescribe - Describe source tables

Use this command to send source table mapping changes over to the target.

This command exits after it as successfully described the specified subscriptions.

Syntaxdmdescribe -I <INSTANCE_NAME> <-A|-s <SUBSCRIPTION_NAME ...> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the InfoSphere CDC instance for which you want to send source tablemapping changes over to the target. Alternatively, you can specify theTSINSTANCE environment variable in place of this value.

-A Specifies that InfoSphere CDC will send source table mapping changes madeto all subscriptions over to the target.

-s <SUBSCRIPTION_NAME>Specifies that InfoSphere CDC sends source table mapping changes for theindicated subscriptions over to the target. To specify multiple subscriptions, listthe subscriptions separated by a space.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmdescribe -I NEWINSTANCE -s FINANCE

InfoSphere CDC sends source table mapping changes in the Finance subscriptionover to the target for the specified instance.

dmflagforrefresh - Flag for Refresh

Use this command to flag a source table for refresh. When you flag a table forrefresh, you are selecting the tables that you want to refresh at a future point intime. Use this procedure when you have selected Refresh as your replicationmethod on a subscription.

Syntaxdmflagforrefresh -I <INSTANCE_NAME> -s <SUBSCRIPTION_NAME ...><-A|-t <schema>.<table> ...> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

54 InfoSphere Change Data Capture: End-User Documentation

Page 61: ISCDC for Oracle

-s <SUBSCRIPTION_NAME>Specifies the name of the subscription. To specify multiple subscriptions, listthe subscriptions separated by a space.

-A Specifies that InfoSphere CDC flags all source tables for refresh in thesubscription.

-t <schema>.<table>Specifies the name of a source table in the subscription that InfoSphere CDCflags for refresh. You must specify the table name in the format schema.table. Tospecify multiple tables, list the tables separated by a space.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmflagforrefresh -I MYINSTANCE -s FINANCE -A

InfoSphere CDC flags for refresh all source tables in the Finance subscription forthe specified instance.

dmmarktablecapturepoint - Mark a table capture point on asource table

Use this command to mark a table capture point on a source table and move thetable to active state. If you changed the table before executing this command, thosechanges will not be replicated.

Mark a table capture point on a source table when you want to override anexisting position in the stream of changed data. This is possible when you havealready synchronized (refreshed) your source and target tables using an applicationother than InfoSphere CDC (for example, using the import or export capabilities ofyour database platform) and you know the point in time your source and targetare synchronized with each other. InfoSphere CDC mirrors changes to the targettable from the current position in the stream of changed data. This position is setby InfoSphere CDC when you select Mirror (Change Data Capture) after mappingyour tables in the Map Tables wizard. If you want to override the position set byInfoSphere CDC, then you can manually mark a table capture point inManagement Console. When you decide to start mirroring on the subscription,InfoSphere CDC identifies the position you have set as the point in time fromwhich to capture and replicate database changes to the target.

Syntaxdmmarktablecapturepoint -I <INSTANCE_NAME> -s <SUBSCRIPTION_NAME ...><-A|-t <schema>.<table> ...> [-L <locale>]

Commands for InfoSphere CDC 55

Page 62: ISCDC for Oracle

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-s <SUBSCRIPTION_NAME>Specifies the subscription name. To specify multiple subscriptions, list thesubscriptions separated by a space.

-A Specifies that InfoSphere CDC overrides an existing position in the stream ofchanged data on all source tables in the subscription.

-t <schema>.<table>Specifies the name of a source table in the subscription on which InfoSphereCDC marks a table capture point. You must specify the table name in theformat schema.table. To specify multiple tables, list the tables separated by aspace.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmmarktablecapturepoint -I MYINSTANCE -s FINANCE -A

All tables in the Finance subscription will use Refresh as the replication method inthe specified InfoSphere CDC instance.

dmmarktablecapturepoint -I MYINSTANCE -s FINANCE -A -t myschema.mytable

InfoSphere CDC moves the specified table to active in the Finance subscription.

dmpark - Park table

Use this command to park a source table. By parking a source table, you tellInfoSphere CDC that you do not want to capture changes for that particular tablein a subscription. When you park a table, InfoSphere CDC does not replicate anysubsequent changes you make on the source table, which may result ininconsistent source and target tables.

Note: Before you can park a source table, if you are mirroring the table to thetarget, then you need to end replication on the subscription. For more information,see the dmendreplication command.

Syntaxdmpark -I <INSTANCE_NAME> -s <SUBSCRIPTION_NAME ...> <-A|-t <schema>.<table> ...>[-L <locale>]

56 InfoSphere Change Data Capture: End-User Documentation

Page 63: ISCDC for Oracle

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-s <SUBSCRIPTION_NAME>Specifies the subscription name. To specify multiple subscriptions, list thesubscriptions separated by a space.

-A Specifies that InfoSphere CDC parks all source tables in the subscription.

-t <schema>.<table>Specifies the name of a source table in the subscription that InfoSphere CDCparks. You must specify the table name in the format schema.table. To specifymultiple tables, list the tables separated by a space.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmpark -I MYINSTANCE -s FINANCE -A

InfoSphere CDC parks all source tables in the Finance subscription.Related reference

“dmendreplication - End replication” on page 40

dmreaddtable - Update source table definition

Use this command to update the definition of one or more source tables in theInfoSphere CDC metadata. Run this command after you have changed thedefinition of a source table using your relational database.

Note: This command will set the table status to Parked after updating the sourcetable definition in the InfoSphere CDC metadata. Use the -a parameter to preservethe Active status for your tables.

Syntaxdmreaddtable -I <INSTANCE_NAME> <-A|-t <schema>.<table> ...> [-a] [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-A Specifies that InfoSphere CDC updates definitions for all source tables that areavailable for replication.

-t <schema>.<table>Specifies the name of a source table in the subscription for which InfoSphere

Commands for InfoSphere CDC 57

Page 64: ISCDC for Oracle

CDC updates the definition. You must specify the table name in the formatschema.table. To specify multiple tables, list the tables separated by a space.

-a Specifies that InfoSphere CDC will preserve the Active table status afterupdating the definition of the source tables in the InfoSphere CDC metadata.By using this optional parameter, the table status will not be set to Parked, youwill not lose the bookmark, and the tables will not require a refresh after yourun the command.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmreaddtable -I NEWINSTANCE -A

InfoSphere CDC updates definitions for all source tables that are available forreplication. The status for all tables will be set to Parked.

dmreaddtable -I NEWINSTANCE -A -a

InfoSphere CDC updates definitions for all source tables that are available forreplication and all tables will retain an Active status.

dmreassigntable - Update target table definition

Use this command to update the definition of a target table in InfoSphere CDCmetadata after you change the definition of the target table in your database.

Syntaxdmreassigntable -I <INSTANCE_NAME> -s <SUBSCRIPTION_NAME ...><-A|-t <schema>.<table> ...> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-s <SUBSCRIPTION_NAME>Specifies the subscription that contains the source table that is mapped to thetarget table which was updated in your database. To specify multiplesubscriptions, list the subscriptions separated by a space.

-A Specifies that InfoSphere CDC updates definitions for all target tables in thesubscription.

-t <schema>.<table>Specifies the name of a source table in the subscription that is mapped to thetarget table for which InfoSphere CDC updates the table definition in themetadata. You must specify the table name in the format schema.table. Tospecify multiple tables, list the tables separated by a space.

58 InfoSphere Change Data Capture: End-User Documentation

Page 65: ISCDC for Oracle

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the operation was successful. If it fails, thiscommand returns a non-zero value.

Example

dmreassigntable -I NEWINSTANCE -s FINANCE -A

InfoSphere CDC updates definitions for all target tables in the Financesubscription.

dmreassigntable -I CDCINSTANCE -s FINANCE -t SCHEMA1.SRCTBL1

InfoSphere CDC updates the definition for the target table that is mapped to theSCHEMA1.SRCTBL1 source table in the Finance subscription.

dmsetreplicationmethod - Set replication method

Use this command to change the replication method for tables in a subscription.When running this command, InfoSphere CDC changes the status of any Activetables to Refresh.

Note: Before you run this command, you must end replication on the subscription.

Syntaxdmsetreplicationmethod -I <INSTANCE_NAME> <-r|-m> -s <SUBSCRIPTION_NAME ...><-A|-t <schema>.<table> ...> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-m Specifies that tables will use Mirror (Change Data Capture) as the replicationmethod.

-r Specifies that tables will use Refresh (Snapshot) as the replication method.

-s <SUBSCRIPTION_NAME>Specifies the name of the subscriptions. To specify multiple subscriptions, listthe subscriptions separated by a space.

-A Specifies that all tables in the subscription will use the indicated replicationmethod.

-t <schema>.<table>Specifies the name of a source table in the subscription that will use theindicated replication method. You must specify the table name in the formatschema.table. To specify multiple tables, list the tables separated by a space.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Commands for InfoSphere CDC 59

Page 66: ISCDC for Oracle

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmsetreplicationmethod -I MYINSTANCE -r -s FINANCE -A

All tables in the Finance subscription will use Refresh as the replication method inthe specified InfoSphere CDC instance.

dmsetreplicationmethod -I NEWINSTANCE -m -s FINANCE -t acct.taxcodes

The source table acct.taxcodes in the Finance subscription will use Mirror as thereplication method in the specified InfoSphere CDC instance.

Monitoring replication commandsThis section contains commands that help you monitor replication in InfoSphereCDC.

See also:“dmclearevents - Clear events”“dmgetsubscriptionstatus - Get subscription status” on page 61“dmshowevents - Display InfoSphere CDC events” on page 62

dmclearevents - Clear events

Use this command to delete events from the Event Log view in ManagementConsole.

Syntaxdmclearevents -I <INSTANCE_NAME> [-S|-T-|-B] <-A|-s <SUBSCRIPTION_NAME ...>[-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-S Specifies that InfoSphere CDC clears events from the source.

-T Specifies that InfoSphere CDC clears events from the target.

-B Specifies that InfoSphere CDC clears events from both the source and target. Ifnone of the S, T, and B options are specified, InfoSphere CDC assumes B bydefault.

-A Specifies that InfoSphere CDC clears events for all subscriptions.

-s <SUBSCRIPTION_NAME>Specifies that InfoSphere CDC clears events for the indicated subscription. Tospecify multiple subscriptions, list the subscriptions separated by a space.

60 InfoSphere Change Data Capture: End-User Documentation

Page 67: ISCDC for Oracle

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmclearevents -I MYINSTANCE -S -A

InfoSphere CDC clears events from the source for all subscriptions for the specifiedinstance.

dmclearevents -I MYINSTANCE -T -s FINANCE MARKETING

InfoSphere CDC clears events from both the source and target for the Finance andMarketing subscriptions for the specified instance.

dmgetsubscriptionstatus - Get subscription status

Issue this command on the InfoSphere CDC source to retrieve status informationfor one or more subscriptions and send the results to standard output.

Syntaxdmgetsubscriptionstatus -I <INSTANCE_NAME> [-p] <-A|-s <SUBSCRIPTION_NAME ...>[-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-p Specifies that InfoSphere CDC sends status information to standard output.

-A Specifies that InfoSphere CDC retrieves status information for all subscriptions.

-s <SUBSCRIPTION_NAME>Specifies the name of the subscription for which status information is retrieved.To specify multiple subscriptions, list the subscriptions separated by a space.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns one of the following statuses for each subscription:v Recovering—The subscription is in an undetermined state.v Idle—The subscription is not running.v Starting—The subscription is in start up mode and is not currently replicating

data.v Running—The subscription is running and replicating data.

Commands for InfoSphere CDC 61

Page 68: ISCDC for Oracle

Examples

dmgetsubscriptionstatus -I MYINSTANCE -p -A

InfoSphere CDC retrieves status information for all subscriptions and sends theresults to standard output for the specified instance.

dmshowevents - Display InfoSphere CDC events

Use this command to display InfoSphere CDC events to standard output. You canuse this command as an alternative to showing InfoSphere CDC events in theEvent Log view in Management Console.

The output of this command shows events in chronological order with the mostrecent event shown first in the list.

Syntaxdmshowevents -I <INSTANCE_NAME> <-a|-s <SUBSCRIPTION_NAME> ...|-t <SOURCE_ID> ...|-s <SUBSCRIPTION_NAME> ... -t <SOURCE_ID> ...> [-h] [-c max_msg][-L <locale>]

ordmshowevents -I <INSTANCE_NAME> <-a|-s <SUBSCRIPTION_NAME>|-t<SOURCE_ID>> ...> [-h] [-c <max_msg>] [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-a Specifies that InfoSphere CDC shows events for all subscriptions.

-s <SUBSCRIPTION_NAME>Specifies the name of the subscription for which InfoSphere CDC displayssource events. To specify multiple subscriptions, list the subscriptionsseparated by a space.

-t <SOURCE_ID>Specifies the source ID of the subscription for which InfoSphere CDC displaystarget events. List the source IDs if you specify more than one.

-h Specifies that InfoSphere CDC displays a header before the list of events. Thisoption helps you identify each item of information that is displayed for eachevent.

-c <max_msg>Specifies the maximum number of events that InfoSphere CDC displays. If youomit this parameter or you specify a value greater than the total number ofevents, InfoSphere CDC displays all events for the specified subscriptions andsource IDs.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

v Minimum Setting—0. No events are shown.v Maximum Setting—2147483647

62 InfoSphere Change Data Capture: End-User Documentation

Page 69: ISCDC for Oracle

Result

This command returns a value of 0 if the operation was successful. If it fails, thiscommand returns a non-zero value.

Examples

dmshowevents -I NEWINSTANCE -s FINANCE

InfoSphere CDC displays all events for the Finance subscription for the specifiedinstance.

dmshowevents -I MYINSTANCE –a –h

InfoSphere CDC displays all events for all subscriptions. A header is displayedbefore the list of events for the specified instance.

dmshowevents -I NEWINSTANCE –s FINANCE MARKETING –t ATLANTA –h –c 20

InfoSphere CDC displays the most recent 20 events for the Finance and Marketingsubscriptions and for the Atlanta source ID. A header is displayed before the list ofevents for the specified instance.

Sample outputTIME|AGENTTYPE|SUBSCRIPTION|EVENTID|SEVERITY|EVENTPROGRAM|EVENTTEXT

2006-04-21 17:23:08.817|T|ATLANTA|95|Information|class com.datamirror.ts.target.publication.c|IBM InfoSphere Change Data Capture Communications ending.

2006-04-21 17:23:08.614|T|ATLANTA|1538|Information|class com.datamirror.ts.target.publication.c|---IBM InfoSphere Change Data Capture for ATLANTA terminatingnormally.

2006-04-21 17:23:08.333|T|ATLANTA|1537|Information|class com.datamirror.ts.target.publication.c|Describe conversation with ATLANTA completed successfully.

2006-04-21 17:23:07.911|T|ATLANTA|1536|Information|class com.datamirror.ts.target.publication.c|Describe conversation started by ATLANTA.

2006-04-21 17:23:07.333|T|ATLANTA|1531|Information|class com.datamirror.ts.target.publication.c|Communication with ATLANTA successfully started on Data channel.

2006-04-21 17:23:06.973|T|ATLANTA|1534|Information|class com.datamirror.ts.engine.a|Code page conversation from the source database's code page 1252 to the targetdatabase's code page Cp1252 for ATLANTA will be performed by the Remote system

Fields in each record are separated by vertical bars ( | ). These fields are identifiedin the first line of the output. In the AGENTTYPE field, S indicates source and Tindicates target.

Exporting and importing configuration commandsThis section contains commands that allow you to export and/or import yourInfoSphere CDC global configuration.

See also:“dmexportconfiguration - Export InfoSphere CDC Configuration” on page 64“dmimportconfiguration - Import InfoSphere CDC Configuration” on page 64

Commands for InfoSphere CDC 63

Page 70: ISCDC for Oracle

dmexportconfiguration - Export InfoSphere CDC Configuration

Use this command to export the configuration details of an installed instance ofInfoSphere CDC. Configuration details are sent to an XML configuration file. Youcan use the dmimportconfiguration command to import the XML file that youcreate with this command into another instance of InfoSphere CDC.

Note: This command does not export subscription-specific settings that areconfigured in Management Console. Subscription-specific settings can be exportedto an XML file in Management Console. For more information, see yourManagement Console documentation.

This command is interactive and will prompt you for your password. You cannotuse this command in a script.

Syntaxdmexportconfiguration <path_to_configuration_file> [-L <locale>]

Parameters

<path_to_configuration_file>The relative or absolute path to the XML configuration file that you want toexport. The relative path is relative to your installation of InfoSphere CDC.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmexportconfiguration c:\configurations\configuration.xml

InfoSphere CDC exports the XML file to the specified relative path.Related reference

“dmimportconfiguration - Import InfoSphere CDC Configuration”

dmimportconfiguration - Import InfoSphere CDC Configuration

Use this command to import the InfoSphere CDC configuration settings from anXML file which you created with the dmexportconfiguration command.

Note: You can use this command in a script in coordination with a silentinstallation to deploy InfoSphere CDC on multiple systems.

Syntaxdmimportconfiguration <path_to_configuration_file> [-L <locale>]

64 InfoSphere Change Data Capture: End-User Documentation

Page 71: ISCDC for Oracle

Parameters

<path_to_configuration_file>The relative or absolute path to the XML configuration file that you areimporting. The relative path is relative to your installation of InfoSphere CDC.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examplesdmimportconfiguration c:\configurations\configuration.xml

InfoSphere CDC imports the XML configuration file from the specified relativepath.Related reference

“dmexportconfiguration - Export InfoSphere CDC Configuration” on page 64

Continuous Capture and staging store commandsContinuous Capture is a product feature that is designed to accommodate thosereplication environments in which it is necessary to separate the reading of thedatabase logs from the transmission of the logical database operations. This isuseful when you want to continue processing log data even if replication and yoursubscriptions stop due to issues such as network communication failures over afragile network, target server maintenance, or some other issue. You can enable ordisable Continuous Capture without stopping subscriptions.

Continuous Capture allows you to avoid spikes in your source system CPUresource utilization by continuing to process log data (and write to disk asnecessary) even when subscriptions are stopped. This feature allows you to avoidsituations where the product uses no CPU when subscriptions are stopped andhigh CPU when you start subscriptions after a prolonged target system outage.

This functionality comes with the trade-off of additional disk utilization on thesource machine in order to accumulate changes from the database log file whenthese are not being replicated to the target machine. These trade-offs should beevaluated and understood before deciding to use this feature in your replicationenvironment.

The InfoSphere CDC staging store is located on your source server and is a cacheof change data read from the database logs. The size of the staging store willincrease as the product accumulates change data, and therefore you must planyour source environment accordingly, particularly disk space.

To use the commands in this section that are applicable to Continuous Capture,you must set the staging_store_can_run_independently system parameter tofalse. The default value for this parameter is true.

See also:“dmenablecontinuouscapture - Enable Continuous Capture” on page 66

Commands for InfoSphere CDC 65

Page 72: ISCDC for Oracle

“dmdisablecontinuouscapture - Disable Continuous Capture”“dmgetstagingstorestatus - Retrieve Staging Store status”“dmclearstagingstore - Remove cached operations from the staging store” onpage 67

dmenablecontinuouscapture - Enable Continuous Capture

Use this command to enable Continuous Capture for your staging store.

Continuous Capture allows the InfoSphere CDC log reader to continue operatingwhen communication with the target datastore is interrupted due to networkdifficulties or other issues. Upon resumption of communication with the target,Continuous Capture will reduce the latency between the source and targetdatastores.

Syntaxdmenablecontinuouscapture -I <INSTANCE_NAME> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Related reference

“dmdisablecontinuouscapture - Disable Continuous Capture”“dmgetstagingstorestatus - Retrieve Staging Store status”

dmdisablecontinuouscapture - Disable Continuous Capture

Use this command to disable Continuous Capture for your staging store.

Syntaxdmdisablecontinuouscapture -I <INSTANCE_NAME> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Related reference

“dmenablecontinuouscapture - Enable Continuous Capture”“dmgetstagingstorestatus - Retrieve Staging Store status”

dmgetstagingstorestatus - Retrieve Staging Store status

Use this command to retrieve status information on the staging store andContinuous Capture.

66 InfoSphere Change Data Capture: End-User Documentation

Page 73: ISCDC for Oracle

Syntaxdmgetstagingstorestatus -I <INSTANCE_NAME> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Related reference

“dmenablecontinuouscapture - Enable Continuous Capture” on page 66“dmdisablecontinuouscapture - Disable Continuous Capture” on page 66

dmclearstagingstore - Remove cached operations from thestaging store

Use this command to remove all the contents from the InfoSphere CDC stagingstore. The staging store is used to provide a cache of log records read from thedatabase logs. There may be times when the contents of the staging store are nolonger valid and InfoSphere CDC will give instructions to clear the staging store ofthese cached records.

Syntaxdmclearstagingstore -I <INSTANCE_NAME> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the operation was successful. If it fails, thiscommand returns a non-zero value.

Other commandsThis section contains miscellaneous commands that allow you to determine theversion of InfoSphere CDC, verify communications, stop InfoSphere CDC, setsystem parameters, and back up your metadata.

See also:“dmbackupmd - Backup Metadata” on page 68“dmconfigurets - Configure InfoSphere CDC” on page 68“dmmdcommander” on page 69“dmmdconsole” on page 69“dmset - Set InfoSphere CDC system parameter” on page 69

Commands for InfoSphere CDC 67

Page 74: ISCDC for Oracle

“dmshowversion - Show InfoSphere CDC version” on page 70“dmshutdown - Shut down InfoSphere CDC” on page 70“dmsupportinfo - Collect IBM Support information” on page 72“dmterminate - Terminate InfoSphere CDC processes” on page 73“dmts32 - Start InfoSphere CDC” on page 74“dmts64 - Start InfoSphere CDC” on page 74“dmverifycommunications” on page 75

dmbackupmd - Backup Metadata

Use this command to create a backup of the InfoSphere CDC metadata databasewhich contains information about your current replication configuration. Youshould always back up your metadata when there are changes to your subscriptionconfiguration and table status. You can only back up your metadata whileInfoSphere CDC is running.

The backup of the metadata database is created in <Installation_directory>/instance/<instance_name>/conf/backup. The files in the backup directory should bestored on separate media for possible recovery.

Syntaxdmbackupmd -I <INSTANCE_NAME> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

dmconfigurets - Configure InfoSphere CDC

Use this command to launch the InfoSphere CDC configuration tool. You can usethis tool to create instances and configure your installation of InfoSphere CDC.

Syntaxdmconfigurets [-L <locale>]

Parameters

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

68 InfoSphere Change Data Capture: End-User Documentation

Page 75: ISCDC for Oracle

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

dmmdcommander

This command is for internal use only.

dmmdconsole

This command is for internal use only.

dmset - Set InfoSphere CDC system parameter

Use this command to view or change InfoSphere CDC system parameters. You canalso change system parameters in Management Console. For more information, seeyour Management Console documentation.

Note: You can set any system parameter using this command. However, it willonly display system parameters that are set to non-default values.

Syntaxdmset -I <INSTANCE_NAME> [<parameter_name>[=[<parameter_value>]]] [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

<parameter_name>Specifies the name of the InfoSphere CDC system parameter.

<parameter_value>Specifies the value that you want to assign to the system parameter.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmset -I MYINSTANCE

Displays all of the system parameters that are set to non-default values.

dmset -I MYINSTANCE global_unicode_as_char=false

Sets the global_unicode_as_char system parameter to false.

dmset -I MYINSTANCE global_unicode_as_char

Commands for InfoSphere CDC 69

Page 76: ISCDC for Oracle

Displays the current value of the specified parameter.

dmset -I MYINSTANCE stop_replication=

Deletes the stop_replication system parameter.

dmshowversion - Show InfoSphere CDC version

Use this command to display the InfoSphere CDC version and build number. Runthis command before you contact your IBM representative.

Syntaxdmshowversion [-L <locale>]

Parameters

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the operation was successful. If it fails, thiscommand returns a non-zero value.

dmshutdown - Shut down InfoSphere CDC

Use this command to stop an instance of InfoSphere CDC and end replication onall subscriptions that use the instance as a source. This command is often usedprior to taking a server or database offline for maintenance purposes or upgradingInfoSphere CDC.

Note: As a best practice before you run this command and to ensure that itcompletes successfully, use the dmendreplication command to end replication onall subscriptions that use the specified instance as a source and as a target. Thiscommand will not complete successfully if target subscriptions are still running.

To end replication on subscriptions that use the specified instance as a target, youcan use the –a parameter which will generate an error when forcefully endingreplication on subscriptions that use the specified instance as the target.

If this command does not end InfoSphere CDC processes and stop the specifiedinstance, use the dmterminate command on the UNIX and Linux platforms to forcea complete shut down.

Syntaxdmshutdown -I <INSTANCE_NAME> [-c|-i|-a|-se [-t <date and time>|-p <log position>][-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

-c Specifies that InfoSphere CDC stops the specified instance and ends replication

70 InfoSphere Change Data Capture: End-User Documentation

Page 77: ISCDC for Oracle

on all subscriptions that use the instance as a source with the Normal option.InfoSphere CDC will use this option by default if you do not specify –se, -i,or –a.

This option completes in progress work and then ends replication. If a refreshis in progress, Normal will complete the refresh for the current table beforereplication ends.

Normal is the most appropriate option for most business requirements and isthe preferred method for ending replication in most situations.

-i Specifies that InfoSphere CDC stops the specified instance and ends replicationon all subscriptions that use the instance as a source with the Immediateoption.

This option stops all in progress work and then ends replication. Startingreplication after using this option can be slower than using -c. If a refresh is inprogress, the refresh for the current table will be interrupted and thenreplication will end.

Attention: Use this option if business reasons require replication to end fasterthan -c at the expense of a slower start when you resume replication on thespecified subscriptions.

-a Specifies that InfoSphere CDC stops the specified instance and ends replicationon all subscriptions that use the instance as a source or target with the Abortoption. Subscriptions that use the specified instance as a target will endreplication with an error.

This option stops all in progress work and then ends replication rapidly.Starting replication after using this option can be much slower than using -c.A refresh in progress will be interrupted and the target will stop processingany data that has not been committed before replication ends.

Attention: Use this option if your business reasons require a rapid end toreplication and you are willing to tolerate a much slower start when youresume replication on the specified subscriptions.

A sudden business requirement for an unplanned shutdown of your sourcesystem may require this option for ending replication.

Note: As a best practice, use the dmendreplication command to endreplication on all subscriptions that use the instance specified in this commandas a source or target.

-seSpecifies that InfoSphere CDC will stop the specified instance and endreplication normally at the current source system time in the source databaselog with the Scheduled End option. Replication will end on subscriptions thatuse the specified instance as a source. The source system time when replicationwill end is set when you issue this command.

You can use the following parameters with this option to end replication at aspecific date and time or log position:v –t—Stop the instance and end replication at a specific date and time in your

source database log.v –p—Stop the instance and end replication at a specific log position in your

source database log.

Commands for InfoSphere CDC 71

Page 78: ISCDC for Oracle

Note: As latency between the source and target increases, the amount of timerequired to end replication will also increase.

-t <date and time>Indicates the date and time in the source database log when replication willend when using –se. When specifying a value for this parameter, use thefollowing format:

“yyyy-MM-dd HH:mm”

This parameter is optional when you specify –se.

-p <log position>Indicates that InfoSphere CDC will end replication at the specified Oracle SCNin your source database log when using -se. The following is an example of anSCN decimal format for Oracle:

6091085393

This parameter is optional when you specify –se.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isthe locale of the machine where InfoSphere CDC is installed.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.Related reference

“dmterminate - Terminate InfoSphere CDC processes” on page 73

dmsupportinfo - Collect IBM Support information

Note: You should only run this command when the Management Console SupportAssistant cannot connect to your InfoSphere CDC datastore because it is notrunning or it will not run. For more information on the Support Assistant, seeManagement Console - Administration Guide.

Use this command (when requested by IBM Support) to collect InfoSphere CDCenvironment information in a generated .zip file that is used to diagnose andtroubleshoot your support issue.

Once the command has completed collecting information and generating the .zipfile, the output will display the full path and name of the .zip file. If you run thiscommand multiple times, the generated .zip files are numbered randomly. Notethat you are responsible for deleting the generated .zip files when they are nolonger required.

Syntaxdmsupportinfo [-I <INSTANCE_NAME>] [-t <"yyyy-MM-dd hh:mm:ss to yyyy-MM-ddhh:mm:ss">] [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the name of the InfoSphere CDC instance. Alternatively, you canspecify the TSINSTANCE environment variable in place of this value.

72 InfoSphere Change Data Capture: End-User Documentation

Page 79: ISCDC for Oracle

If you do not specify an instance (possibly because you could not create aninstance), this command will only collect non-instance specific information.

-t <"yyyy-MM-dd hh:mm:ss to yyyy-MM-dd hh:mm:ss">Specifies the date and time range (relative to the time zone of the operatingsystem where you issue this command) used by InfoSphere CDC to retrieveenvironment information.

Note: As a best practice, specify a date and time range that only captures thetime period when you experienced problems. This allows for easier problemdiagnosis and reduces the size of the files retrieved.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Example

dmsupportinfo -I PRODUCTION -t "2009-12-03 08:00:00 to 2009-12-03 12:00:00"

Retrieves support information for the Production instance from 8:00 AM to 12:00PM on December 3, 2009. This is the time range when you experienced supportissues with this instance of InfoSphere CDC.Related concepts

“Troubleshooting and contacting IBM Support” on page 91

dmterminate - Terminate InfoSphere CDC processes

Note: This command is only supported on the UNIX and Linux platforms.

Use this command to terminate all InfoSphere CDC processes for all instancesrunning on a UNIX or Linux server that you cannot completely shut down withthe dmshutdown command. InfoSphere CDC terminates only processes that arestarted by the UNIX account used to run this command.

You can use this command prior to taking a server or database offline formaintenance purposes or upgrading InfoSphere CDC to the latest version.

Use the dmshutdown command to gracefully shut down InfoSphere CDC. Ifdmshutdown is unable to completely shut down InfoSphere CDC, then usedmterminate to terminate any active InfoSphere CDC processes that still remainafter issuing dmshutdown.

Syntaxdmterminate [-L <locale>]

Parameters

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Commands for InfoSphere CDC 73

Page 80: ISCDC for Oracle

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

dmts32 - Start InfoSphere CDC

Use this command to start InfoSphere CDC 32–bit version.

Syntaxdmts32 -I <INSTANCE_NAME> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the InfoSphere CDC instance for which you want to start.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

Examples

dmts32 -I -MYINSTANCE

InfoSphere CDC starts for the specified instance.

dmts64 - Start InfoSphere CDC

Use this command to start InfoSphere CDC 64–bit version.

Syntaxdmts64 -I <INSTANCE_NAME> [-L <locale>]

Parameters

-I <INSTANCE_NAME>Specifies the InfoSphere CDC instance for which you want to start.

-L <locale>The name of the locale used for the InfoSphere CDC instance. The default isyour machine's locale.

Result

This command returns a value of 0 if the command was successful and a non-zerovalue if the command fails.

74 InfoSphere Change Data Capture: End-User Documentation

Page 81: ISCDC for Oracle

Examples

dmts64 -I MYINSTANCE

InfoSphere CDC starts for the specified instance.

dmverifycommunications

This command is for internal use only.

Commands for InfoSphere CDC 75

Page 82: ISCDC for Oracle

76 InfoSphere Change Data Capture: End-User Documentation

Page 83: ISCDC for Oracle

User exits for InfoSphere CDC

A user exit lets you define a set of actions that InfoSphere CDC can run before orafter a database event occurs on a specified table. User exits allow you tocustomize your environment to meet your business requirements. After compilingthe user exit, you can specify the user exit in Management Console. For moreinformation, see your Management Console documentation.

InfoSphere CDC provides two types of user exits:v Stored procedure—This type of user exit is run directly by the database engine

and is generally faster at processing database requests.v Java class—This type of user exit utilizes the InfoSphere CDC API. Javadocs

with interface and class specifications for the API are installed with the product.The Javadocs are located in /<installation_directory>/docs/api. To open theJavadocs in your browser, click index.html.

Sample Java class user exits are also provided with InfoSphere CDC. You canextend or modify these samples to suit your environment.

In this section, you will learn:“Stored procedure user exits for table and row level operations”“Sample Java class user exits for InfoSphere CDC” on page 85“InfoSphere CDC API reference – Javadocs” on page 86

Stored procedure user exits for table and row level operationsA stored procedure is a program (or procedure) which is physically stored within adatabase. The advantage of a stored procedure is that when it is run, in responseto a user request, it is run directly by the database engine, which usually runs on aseparate database server and is generally faster at processing database requests.

After writing and compiling user exit programs, you can specify at which user exitpoint you want to invoke the user exit (either before or after a row-level or beforeor after a table-level operation) on the User Exits tab of InfoSphere CDC.

See also:“Defining a stored procedure user exit”“Stored procedure user exit database connections” on page 78“Retrieving data with a stored procedure user exit” on page 78“Example of a stored procedure user exit” on page 84

Defining a stored procedure user exitWhen defining a stored procedure user exit in InfoSphere CDC, consider thefollowing:v Overloaded stored procedures are not supported.v Stored procedure user exits must have at least two parameters, which must be

the first two defined in the following order:

© Copyright IBM Corp. 2008, 2010 77

Page 84: ISCDC for Oracle

– result—An integer output parameter that returns '0' if the stored procedureuser exit is successful or a non-zero value if the stored procedure user exit isnot successful.

– returnMsg—A character output parameter that returns error messages to theEvent Log if the stored procedure user exit is not successful.

Related reference

“Example of a stored procedure user exit” on page 84

Stored procedure user exit database connectionsThe stored procedure user exit program and InfoSphere CDC use the same sharedconnection as the default method to connect to the database. This setting ensuresthat, by default, changes to tables made by InfoSphere CDC are visible to thestored procedure user exit program.

Retrieving data with a stored procedure user exitYou can retrieve data from your source table by passing system parameters to yourstored procedure. You can retrieve the following type of data:v Retrieve system values (s$)—when passed to a stored procedure, the s$ prefix

makes system values available from the source database to your storedprocedure. For example, s$entry identifies the entry point at which InfoSphereCDC had run the user exit.

v Retrieve journal control fields (j$)—when passed to a stored procedure, the j$prefix makes journal control fields available from the source database to yourstored procedure. For example, j$USER identifies the operating system username of the person that made the update on the source table. This is useful ifyou are using the stored procedure to audit table or row-level operations thathave occurred on the source table.

v Retrieve data values—depending on the prefix you pass to the storedprocedure, you can retrieve data from the source database and make it availableto your stored procedure. For example, you can use b$ to retrieve the beforeimage of the source column, or you can use k$ to access the target table to findthe rows that need to be modified.

Each of these values can be used as input parameters for the stored procedure userexit that you write. The format used to retrieve data is slightly different dependingon the product that you are using:v For InfoSphere CDC, the format is <x>$<value>

where <x> represents the prefix and <value> represents the name of the value to beretrieved.

See also:“Retrieving system values using the s$ prefix”“Retrieving journal control fields using the j$ prefix” on page 80“Retrieving data values using b$, a$, k$, and d$ prefixes” on page 82

Retrieving system values using the s$ prefixThis prefix is used to retrieve system values. The table below presents and brieflydescribes these values.

78 InfoSphere Change Data Capture: End-User Documentation

Page 85: ISCDC for Oracle

Prefix and Value Data Type Description

s$entry NUMBER Represents the entry pointfrom where the storedprocedure was invoked. Youcan invoke a storedprocedure from the followingentry points:

v 1—indicates thatInfoSphere CDC hasinvoked the storedprocedure before a tableclear (truncate) operation

v 2—indicates thatInfoSphere CDC hasinvoked the storedprocedure after a tableclear (truncate) operation

v 3—indicates thatInfoSphere CDC hasinvoked the storedprocedure before a rowinsert operation

v 4—indicates thatInfoSphere CDC hasinvoked the storedprocedure after a rowinsert operation

v 5—indicates thatInfoSphere CDC hasinvoked the storedprocedure before a rowupdate operation

v 6—indicates thatInfoSphere CDC hasinvoked the storedprocedure after a rowupdate operation

v 7—indicates thatInfoSphere CDC hasinvoked the storedprocedure before a rowdelete operation

v 8—indicates thatInfoSphere CDC hasinvoked the storedprocedure after a rowdelete operation

v 9—indicates thatInfoSphere CDC hasinvoked the storedprocedure before a tablerefresh operation

v 10—indicates thatInfoSphere CDC hasinvoked the storedprocedure after a tablerefresh operation

User exits for InfoSphere CDC 79

Page 86: ISCDC for Oracle

Prefix and Value Data Type Description

s$srcSysId VARCHAR Identifies uniquely thelocation of the source data.

s$srcTabId VARCHAR Represents the name of thesource table in the sourcedatabase that sendsreplicated data to the target.

s$tgtTabId VARCHAR Represents the name of thetarget table in the targetdatabase that receivesreplicated data from thesource.

Retrieving journal control fields using the j$ prefixThis prefix is used to retrieve information about the operation that occurred on thesource system. You can use jb$ with InfoSphere CDC to retrieve the sameinformation.

Note: If you are replicating data using InfoSphere CDC for IBM i on the sourcesystem, then the value for j$ and jb$ with ENTT and SEQN journal control fieldswill be different. jb$ENTT generates 'UB' to indicate that the before image of arow has been updated on the source table, and generates 'UP' to indicate that theafter image of a row has been updated on the source table. Also, if you are usingInfoSphere CDC for IBM i on the source system, then jb$SEQN generates aninternal ID for the row within a transaction.

The available values are listed:

Prefix and Value Data Type Description

j$CCID VARCHAR Identifies the transactionwith the insert, update, ordelete operation.

j$CODE VARCHAR Identifies the type of journalor log entry, either “U” for arefresh operation or “R” formirroring. The IBM iplatform will send “F” forfile or table-level entries.

j$CTRR or j$CNTRRN VARCHAR Identifies the relative recordnumber of the source tablethat recorded the journal/logentry.Note: CTRR or CNTRRNcontains meaningfulinformation when youinvoke your storedprocedure on the insertentries that make up therefresh. The IBM i platformwill also fill this in on anyinsert, update, or deleteoperation.

80 InfoSphere Change Data Capture: End-User Documentation

Page 87: ISCDC for Oracle

Prefix and Value Data Type Description

j$ENTT or j$ENTTYP VARCHAR Generates journal or logcodes that identify theoperation type on the sourcesystem.

j$JRN or j$JOURNAL VARCHAR The name of the journal/logwhere InfoSphere CDC isreading insert, update, ordelete operations from.

j$JOB VARCHAR Identifies the name of the jobthat made the insert, update,or delete on the sourcesystem.

j$MBR or j$MEMBER VARCHAR Identifies the name of thesource table or its alias.

j$NBR or j$JOBNO VARCHAR Identifies the process ID ofthe program on the sourcetable that is making theinsert, update, or deleteoperation.

j$PGM or j$PROGRAM VARCHAR Identifies the name of theprogram on the sourcesystem that made the insert,update or delete operation.

j$SEQN or j$SEQNO VARCHAR Identifies the sequencenumber of the insert, update,or delete operation in thejournal or log.

j$SYNM or j$SYSTEM VARCHAR Identifies the host name ofthe source system.

j$USER VARCHAR Identifies the operatingsystem user name that madethe insert, update, or deleteoperation on the source.

j$USPF VARCHAR Identifies the database username that made the insert,update, or delete operationon the source.

j$TSTP or j$TIMSTAMP VARCHAR Identifies the date and timeof when the insert, update,or delete operation or refreshwas made on the source. Inenvironments that supportmicrosecond precision, thedate and time format of thisjournal control field isYYYY-MM-DD-HH:MM:SS.UUUUUU.Otherwise, InfoSphere CDCsets the microsecondcomponent UUUUUU tozeroes or does not include itat all.

User exits for InfoSphere CDC 81

Page 88: ISCDC for Oracle

Retrieving data values using b$, a$, k$, and d$ prefixesFour prefixes are used to retrieve data:

Prefix Mode Description

b$<source column name> Input Used to retrieve the beforeimage of the data in a sourcecolumn. The before image isthe original image from thesource table column beforeany transformation is appliedto it.

For example, you may havemade the following UPDATEto your source table:

UPDATE source_tableset MYCOLUMN = 2where MYCOLUMN = 1;

This will set 2 on all rowswhere MYCOLUMN was 1before the execution of thisSQL statement.

When you define a storedprocedure and decide thatyou want the storedprocedure to retrieve thebefore image ofMYCOLUMN, you wouldspecify the following:

b$MYCOLUMN;

This returns a value of 1.

82 InfoSphere Change Data Capture: End-User Documentation

Page 89: ISCDC for Oracle

Prefix Mode Description

a$<source column name> Input Used to retrieve the afterimage of the data in a sourcecolumn. The after image isthe translated data from thesource table column. Forexample, the data that wastranslated by a derivedexpression.

For example, you may havemade the following UPDATEto your source table:

UPDATE source_tableset MYCOLUMN = 2where MYCOLUMN = 1;

This will set 2 on all rowswhere MYCOLUMN was 1before the execution of thisSQL statement.

When you define a storedprocedure and decide thatyou want the storedprocedure to retrieve theafter image of MYCOLUMN,you would specify thefollowing:

a$MYCOLUMN;

This returns a value of 2.

k$<target key column name> Input Used to access the targettable to find the rows thatneed to be modified.Note: Key columns are notavailable for auditing.

d$<target column name> Input/Output Used to retrieve data valuesafter transformation, whichwill be used to update thetable in the target database.Only these values may bemodified by the storedprocedure.

User exits for InfoSphere CDC 83

Page 90: ISCDC for Oracle

Example of a stored procedure user exit

The following code snippet is an example of a stored procedure user exit.

Code Comments

create or replace procedurePROD.AUDIT_STPROC (

result OUT INT,returnMsg OUT CHAR,s$entry IN NUMBER,s$srcSysId IN CHAR,s$srcTabId IN CHAR,s$tgtTabId IN CHAR,j$ENTT IN CHAR,a$IDNO IN NUMBER,a$PRICE IN NUMBER,a$DESC IN CHAR,a$LONGDESC IN CHAR,a$TRANSDATE IN DATE,d$IDNO IN NUMBER,d$PRICE IN NUMBER,d$DESC IN CHAR,d$LONGDESC IN CHAR,d$TRANSDATE IN DATE)

The parameters you declare and want to pass to yourstored procedure must be valid data types.

The following parameters are mandatory and must bedeclared in your stored procedure:

v result—Returns a value of '0' if the stored procedure userexit is successful. If the stored procedure user exit is notsuccessful it will return a non-zero value and a messagewill be sent to the Event Log.

v returnMsg—Returns an error message to the Event Logif the stored procedure is not successful.

The following parameters have been declared in this storedprocedure:

v s$entry—Retrieves the entry point at which the storedprocedure was called. In this example, InfoSphere CDCcalls the user exit at every entry point.

v s$srcSysId—Retrieves the location of source data.

v s$srcTabId—Retrieves the name of the source table.

v s$tgtTabId—Retrieves the name of the target table.

v j$ENTT—Retrieves the journal code that indicates thetype of operation on the source table.

v a$—Retrieves the after image of the IDNO, PRICE,DESC, LONGDESC, and TRANSDATE source columns.

v d$—Retrieves the transformed data of the IDNO, PRICE,DESC, LONGDESC, and TRANSDATA target columns.

ISENTRYPOINT VARCHAR(50);BEGINCASE s$entry

WHEN 16 THEN ENTRYPOINT :='User Exit program called Before Insert';WHEN 1048576 THEN ENTRYPOINT :='User Exit program called After Insert';WHEN 64 THEN ENTRYPOINT :='User Exit program called Before Update';WHEN 4194304 THEN ENTRYPOINT :='User Exit program called After Update';END CASE;

This stored procedure user exit can be invoked from theseentry points.

insert into PROD.AUDIT_TABLE1values (s$entry, s$srcSysId,s$srcTabId, s$tgtTabId,j$ENTT, a$IDNO, a$PRICE, a$DESC,a$LONGDESC, a$TRANSDATE, d$IDNO,d$PRICE, d$DESC, d$LONGDESC, d$TRANSDATE,ENTRYPOINT);

This stored procedure user exit will INSERT these valuesinto PROD.AUDIT_TABLE1.

result := 0;returnMsg := 'OK';

END AUDIT_STPROC;

This stored procedure user exit is successful and returns a'0' value.Note: If your stored procedure returns a non-zero valuebecause the stored procedure is not successful, then anerror message is sent to the Event Log.

84 InfoSphere Change Data Capture: End-User Documentation

Page 91: ISCDC for Oracle

Sample Java class user exits for InfoSphere CDCInfoSphere CDC provides sample user exits that you can extend or modify to suityour environment. The samples are found in samples.jar, which is located in thesamples directory in your InfoSphere CDC installation directory. The Java filecontains the following samples:v ArchiveLogPathUserExitSample.java—returns the fully qualified path (including

file name and extension) to the Oracle archive log file. This sample is located incom.datamirror.ts.target.publication.userexit.sample.

v CRUserExitSample.java—a conflict resolution user exit that can be used withtables having a primary key column of any data type or a numeric column withany data type. This sample is located incom.datamirror.ts.target.publication.userexit.cdr.

v DEUserExitSample.java—used in expressions using the %USERFUNC columnfunction. It calculates the sum of the user-supplied parameters (in theexpression) and returns the sum incremented by 1. This sample is located incom.datamirror.ts.derivedexpressionmanager.

v SPUserExitSample.java—calls a stored procedure with the image coming fromthe source. This sample is located incom.datamirror.ts.target.publication.userexit.sample.

v UserExitSample.java—subscribes to replication events to retrieve the details ofthe events which took place. This sample is located incom.datamirror.ts.target.publication.userexit.sample.

v UserExitSample1.java—records new rows inserted into a table on the target andstores them in a text file. The user specifies the name of the text file as aparameter. This sample is located incom.datamirror.ts.target.publication.userexit.sample.

Note the following:v To run the sample user exits without modifying them, you must specify the fully

qualified path to the compiled user exit in Management Console. For example,com.datamirror.ts.target.publication.userexit.sample.UserExitSample.

v Compiled sample user exits are located in the ts.jar file which is found in thelib directory in your InfoSphere CDC installation directory. Note that thecompiled user exits in the ts.jar file have a *.class extension.

v If you want to modify the sample user exits, you must compile the user exitafter you make changes to the source code.

v The user exit class must also be in your classpath.

For more information on how to specify Java class or Stored Procedure user exitsin Management Console, see your Management Console documentation.

See also:“To compile the sample Java class user exits (UNIX and Linux)”

To compile the sample Java class user exits (UNIX and Linux)1. Stop InfoSphere CDC.2. Unzip the samples.jar file into the lib directory in your InfoSphere CDC

installation directory. Make sure you maintain the directory structure whenunzipping the jar file.After unzipping the jar file, you will have a directory structure like thefollowing:

User exits for InfoSphere CDC 85

Page 92: ISCDC for Oracle

<installation_directory>/lib/com/datamirror/ts/target/publication/userexit/sample

3. Make your changes to the sample user exit.4. Compile the modified user exit. For example, if you want to compile

UserExitSample.java, open a command window, navigate to the lib directoryand issue the following command:javac -classpath ts.jar:. com/datamirror/ts/target/publication/userexit/sample/UserExitSample.java

If this command runs successfully, there will be no output on your screen.

Note: Your system must have the Java JDK to run this command.5. After running the command successfully, navigate to the following directory

and confirm that you have created a UserExitSample.class file:<installation_directory>/lib/com/datamirror/ts/target/publication/userexit/sample

6. Start InfoSphere CDC.7. The final step to configure the user exit is to specify the fully qualified path to

UserExitSample in Management Console. For example:com.datamirror.ts.target.publication.userexit.sample.UserExitSample

Note: Do not specify the .class extension.

For more information on how to specify Java class user exits in ManagementConsole, see your Management Console documentation.

Note: If you plan to use the sample user exits in production environments, youwill have to test the samples before they are deployed. IBM does not assumeresponsibility for adverse results caused by modified or customized user exitclasses.

InfoSphere CDC API reference – JavadocsThe API reference is available in Javadoc format in your InfoSphere CDCinstallation directory. To view the API reference, navigate to the api directorybelow and click the index.html file to open the Javadoc documentation in yourbrowser:v UNIX and Linux—<InfoSphere CDC installation directory>/docs/api

86 InfoSphere Change Data Capture: End-User Documentation

Page 93: ISCDC for Oracle

Conflict resolution audit table

When InfoSphere CDC resolves a conflict between the source and target tables, itrecords information about the resolution in the TS_CONFAUD table. InfoSphereCDC creates this table in the target metadata location that is specified during theconfiguration of InfoSphere CDC.

In this section, you will learn:“Structure of the conflict resolution audit table”“Row image format” on page 89“Truncated images” on page 89“Unaudited data types” on page 89

Structure of the conflict resolution audit tableYou can use the TS_CONFAUD table to track how conflict resolution affects yourtarget table. For example, you can query the AFTERIMG column to see when achange was made to the target table. Then you can review the contents of theBEFOREIMG and AFTERIMG columns to see the change on the source table thatresulted in the data on the target table. This can help in identifying issues in yourconflict resolution strategy.

Conflict detection and resolution is configured in Management Console. For moreinformation, see your Management Console documentation.

The structure of the TS_CONFAUD table is as follows:

Column Description

CNFTIME The date and time on the target when the conflict wasdetected.

SRCTIME The time the conflicting data was applied to the sourcetable.

SRCSYSID The source ID of the subscription.

SRCSCHEMA The schema or library name for the source table.

SRCNAME The name of the source table.

SRCMEMBER This field is blank.

TGTSCHEMA The schema or library for the target table.

TGTNAME The name of the target table.

TGTMEMBER This column is only used for the IBM i platform.

OPTYPE The row-level operation on the source that caused theconflict. The value is one of:

v 1—arrow was inserted into the source table.

v 2—arrow was updated on the source table.

v 3—arrow was deleted from the source table.

© Copyright IBM Corp. 2008, 2010 87

Page 94: ISCDC for Oracle

Column Description

CNFTYPE The type of conflict that was detected. The value is oneof:

v 1—arrow was inserted into the source table. The keyfor that row already exists in the target table.

v 2—arrow was updated or deleted on the source table.The key for that row does not exist in the target table.

v 3—arrow was updated or deleted on the source table.The images of the source and target tables do notmatch.

v 4—an unexpected conflict was detected.

RESMTD The conflict resolution method that was used. The valueis one of:

v 1—source wins

v 2—target wins

v 3—largest value wins

v 4—smallest value wins

v 5—user exit

If the resolution method was None, then a row will notbe entered into this table. See your InfoSphere CDCdocumentation for more information on these methods.

CNFRES Indicates if the conflict was resolved. The value is oneof:

v Y—the conflict was resolved.

v N—the conflict was not resolved.

BEFORETRNC Indicates if the before image stored in BEFOREIMG wastruncated. The value is one of:

v Y—the value was truncated.

v N—the value was not truncated.

BEFOREIMG A representation of the row in the source table after itwas changed. See Row Image Format for moreinformation on the format of this column.

AFTERTRNC Indicates if the after image stored in AFTERIMG wastruncated. The value is one of:

v Y—the value was truncated.

v N—the value was not truncated.

AFTERIMG A representation of the row in the source table after itwas changed. See Row Image Format for moreinformation on the format of this column.

TGTIMG A representation of the row in the target table beforereplication occurred. See Row Image Format for moreinformation on the format of this column.

TGTTRNC Indicates if the after image stored in TGTIMG wastruncated. The value is one of:

v Y—the value was truncated.

v N—the value was not truncated.

WINIMG A representation of the final row in the target table afterconflict resolution has occurred. See Row Image Formatfor more information on the format of this column.

88 InfoSphere Change Data Capture: End-User Documentation

Page 95: ISCDC for Oracle

Column Description

WINTRNC Indicates if the image stored in WINIMG was truncated.The value is one of:

v Y—the value was truncated.

v N—the value was not truncated.

Related concepts

“Row image format”

Row image formatThe BEFOREIMG, AFTERIMG, TGTIMG, and WINIMG columns in the audittable show representations of a row in either the source or target table.

The images in these columns are limited by the maximum length of VARCHARdata on your target metadata database. The images contain all of the values in therow, except for data in raw, binary, or LOB columns. The data from each column ispresented in the following format:(length:value)

In the format above, value is the data in the column and length is the number ofcharacters used to represent the data. The images display numeric data ascharacter strings and NULL values as (null).

The row images match the column order in the source table and the conflictresolution audit table. These images may be truncated if the image is longer thanthe maximum length of VARCHAR data in the target metadata database. If atable's key column is not the first column in the table, then it may be truncated.

Truncated imagesIf a row image is longer than the maximum length of a VARCHAR column, thenthey will be truncated. There is a column in the audit table that indicates if eachimage column has been truncated. For example, if WINTRNC is Y, then the valueof WINIMG was truncated. The format of the truncated column is:(-length:value)

In the format above, value is the truncated value and length is the number ofcharacters in the truncated string.

Unaudited data typesThe audit table does not include columns of the following data types in its images:v IMAGEv NTEXTv TEXT

If the source or target table contains rows with these data types, then the imagesimply overlooks them. Binary data will appear in the images as hex-encodedcharacters. The image does not store any information from unsupported columns.

Conflict resolution audit table 89

Page 96: ISCDC for Oracle

90 InfoSphere Change Data Capture: End-User Documentation

Page 97: ISCDC for Oracle

Troubleshooting and contacting IBM Support

The following support page contains the latest troubleshooting information anddetails on how to open a service request with IBM Support:v http://www.ibm.com/software/data/infosphere/support/change-data-capture/

For contact information in your region:v http://www.ibm.com/planetwide/Related reference

“dmsupportinfo - Collect IBM Support information” on page 72

© Copyright IBM Corp. 2008, 2010 91

Page 98: ISCDC for Oracle

92 InfoSphere Change Data Capture: End-User Documentation

Page 99: ISCDC for Oracle

Notices

This information was developed for products and services offered in the U.S.A.

IBM may not offer the products, services, or features discussed in this document inother countries. Consult your local IBM representative for information on theproducts and services currently available in your area. Any reference to an IBMproduct, program, or service is not intended to state or imply that only that IBMproduct, program, or service may be used. Any functionally equivalent product,program, or service that does not infringe any IBM intellectual property right maybe used instead. However, it is the user's responsibility to evaluate and verify theoperation of any non-IBM product, program, or service.

IBM may have patents or pending patent applications covering subject matterdescribed in this document. The furnishing of this document does not grant youany license to these patents. You can send license inquiries, in writing, to:

IBM Director of LicensingIBM CorporationNorth Castle DriveArmonk, NY 10504-1785U.S.A.

For license inquiries regarding double-byte (DBCS) information, contact the IBMIntellectual Property Department in your country or send inquiries, in writing, to:

IBM World Trade Asia CorporationLicensing 2-31 Roppongi 3-chome, Minato-kuTokyo 106-0032, Japan

The following paragraph does not apply to the United Kingdom or any othercountry where such provisions are inconsistent with local law:INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THISPUBLICATION “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHEREXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIEDWARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESSFOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express orimplied warranties in certain transactions, therefore, this statement may not applyto you.

This information could include technical inaccuracies or typographical errors.Changes are periodically made to the information herein; these changes will beincorporated in new editions of the publication. IBM may make improvementsand/or changes in the product(s) and/or the program(s) described in thispublication at any time without notice.

Any references in this information to non-IBM Web sites are provided forconvenience only and do not in any manner serve as an endorsement of those Websites. The materials at those Web sites are not part of the materials for this IBMproduct and use of those Web sites is at your own risk.

IBM may use or distribute any of the information you supply in any way itbelieves appropriate without incurring any obligation to you.

© Copyright IBM Corp. 2008, 2010 93

Page 100: ISCDC for Oracle

Licensees of this program who wish to have information about it for the purposeof enabling: (i) the exchange of information between independently createdprograms and other programs (including this one) and (ii) the mutual use of theinformation which has been exchanged, should contact:

IBM Canada Limited Office of the Lab Director8200 Warden AvenueMarkham, OntarioL6G 1C7CANADA

Such information may be available, subject to appropriate terms and conditions,including in some cases, payment of a fee.

The licensed program described in this information and all licensed materialavailable for it are provided by IBM under terms of the IBM Customer Agreement,IBM International Program License Agreement, or any equivalent agreementbetween us.

Any performance data contained herein was determined in a controlledenvironment. Therefore, the results obtained in other operating environments mayvary significantly. Some measurements may have been made on development-levelsystems and there is no guarantee that these measurements will be the same ongenerally available systems. Furthermore, some measurements may have beenestimated through extrapolation. Actual results may vary. Users of this documentshould verify the applicable data for their specific environment.

Information concerning non-IBM products was obtained from the suppliers ofthose products, their published announcements or other publicly available sources.IBM has not tested those products and cannot confirm the accuracy ofperformance, compatibility or any other claims related to non-IBM products.Questions on the capabilities of non-IBM products should be addressed to thesuppliers of those products.

All statements regarding IBM's future direction or intent are subject to change orwithdrawal without notice, and represent goals and objectives only.

All IBM prices shown are IBM's suggested retail prices, are current and are subjectto change without notice. Dealer prices may vary.

This information is for planning purposes only. The information herein is subject tochange before the products described become available.

This information contains examples of data and reports used in daily businessoperations. To illustrate them as completely as possible, the examples include thenames of individuals, companies, brands, and products. All of these names arefictitious and any similarity to the names and addresses used by an actual businessenterprise is entirely coincidental.

COPYRIGHT LICENSE:

This information contains sample application programs in source language, whichillustrate programming techniques on various operating platforms. You may copy,modify, and distribute these sample programs in any form without payment toIBM, for the purposes of developing, using, marketing or distributing applicationprograms conforming to the application programming interface for the operating

94 InfoSphere Change Data Capture: End-User Documentation

Page 101: ISCDC for Oracle

platform for which the sample programs are written. These examples have notbeen thoroughly tested under all conditions. IBM, therefore, cannot guarantee orimply reliability, serviceability, or function of these programs.

Each copy or any portion of these sample programs or any derivative work, mustinclude a copyright notice as follows:

© (your company name) (year). Portions of this code are derived from IBM Corp.Sample Programs. © Copyright IBM Corp. _enter the year or years_. All rightsreserved.

If you are viewing this information softcopy, the photographs and colorillustrations may not appear.

TrademarksThe following terms are trademarks of International Business MachinesCorporation in the United States, other countries, or both:

AIXDB2IBMInfoSpherePOWERSystem i

Intel, Intel Inside® (logos), Itanium, MMX, Pentium®, and Xeon® are trademarks ofIntel Corporation in the United States, other countries, or both.

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in theUnited States, other countries, or both.

Linux is a trademark of Linus Torvalds in the United States, other countries, orboth.

UNIX is a registered trademark of The Open Group in the United States and othercountries.

Other company, product, or service names may be trademarks or service marks ofothers.

Notices 95

Page 102: ISCDC for Oracle

96 InfoSphere Change Data Capture: End-User Documentation

Page 103: ISCDC for Oracle
Page 104: ISCDC for Oracle

����

Printed in USA