Documentation
Advanced Search


Installing and Configuring Oracle GoldenGate for Oracle Database

6 Configuring Oracle GoldenGate in a Multitenant Container Database

This chapter contains additional configuration instructions when configuring Oracle GoldenGate in a multitenant container database (CDB).

This chapter includes the following sections:

6.1 Using Oracle GoldenGate with Pluggable Databases

In most ways, Oracle GoldenGate operates in a multitenant container database the same way that it operates in a regular Oracle database. Therefore, consider these instructions as the foundation for following the actual configuration instructions in the following chapters:

Chapter 7, "Configuring Capture in Integrated Mode"

Chapter 9, "Configuring Oracle GoldenGate Apply"

6.1.1 Capturing from Pluggable Databases

One Extract group can capture from multiple pluggable databases to a single trail. In the parameter file, source objects must be specified in TABLE and SEQUENCE statements with their fully qualified three-part names in the format of container.schema.object.

As an alternative to specifying three-part names, you can specify a default pluggable database with the SOURCECATALOG parameter, and then specify only the schema.object in subsequent TABLE or SEQUENCE parameters. You can use multiple instances of this configuration to handle multiple source pluggable databases. For example:

SOURCECATALOG pdb1
TABLE schema*.tab*;
SEQUENCE schema*.seq*;
SOURCECATALOG pdb2
TABLE schema*.tab*;
SEQUENCE schema*.seq*;

6.1.2 Applying to Pluggable Databases

Replicat can only connect and apply to one pluggable database. To specify the correct one, use a SQL*Net connect string for the database user that you specify with the USERID or USERIDALIAS parameter. For example: GGADMIN@FINANCE. In the parameter file, specify only the schema.object in the TARGET portion of the MAP statements. In the MAP portion, identify source objects captured from more than one pluggable database with their three-part names or use the SOURCECATALOG parameter with two-part names. The following is an example of this configuration.

SOURCECATALOG pdb1
MAP schema*.tab*, TARGET *1.*;
MAP schema*.seq*, TARGET *1.*;
SOURCECATALOG pdb2
MAP schema*.tab*, TARGET *2.*;
MAP schema*.seq*, TARGET *2.*;

The following is an example without the use of SOURCECATALOG to identify the source pluggable database. In this case, the source objects are specified with their three-part names.

MAP pdb1.schema*.tab*, TARGET *1.*;
MAP pdb1.schema*.seq*, TARGET *1.*;

To configure replication from multiple source pluggable databases to multiple target pluggable databases, you can configure parallel Extract and Replicat streams, each handling data for one pluggable database. Alternatively, you can configure one Extract capturing from multiple source pluggable databases, which writes to one trail that is read by multiple Replicat groups, each applying to a different target pluggable database. Yet another alternative is to use one Extract writing to multiple trails, each trail read by a Replicat assigned to a specific target pluggable database (see Figure 6-1).

Figure 6-1 Possible Configuration for Capture and Apply from Multiple Pluggable Databases

Description of Figure 6-1 follows
Description of "Figure 6-1 Possible Configuration for Capture and Apply from Multiple Pluggable Databases"

6.1.3 Excluding Objects from the Configuration

To exclude pluggable databases, schemas, and objects from the configuration, you can use the CATALOGEXCLUDE, SCHEMAEXCLUDE, TABLEEXCLUDE, MAPEXCLUDE, and EXCLUDEWILDCARDOBJECTSONLY parameters. See Reference for Oracle GoldenGate for Windows and UNIX for more information.

6.2 Other Requirements for Multitenant Container Databases

The following are the special requirements that apply to replication to and from multitenant container databases.

  • All of the pluggable databases in the multitenant container database must have the same attributes, such as character set, locale, and case-sensitivity. The character set of the pluggable databases can be a subset of that of the root container.

  • Extract must operate in integrated capture mode. See Section 5.2, "Deciding Which Capture Method to Use" for more information about Extract capture modes. Replicat can operate in any of its modes.

  • Extract must connect to the root container (cdb$root) as a common user in order to interact with the logmining server. To specify the root container, use the appropriate SQL*Net connect string for the database user that you specify with the USERID or USERIDALIAS parameter. For example: C##GGADMIN@FINANCE. See Chapter 4, "Establishing Oracle GoldenGate Credentials" for how to create a user for the Oracle GoldenGate processes and grant the correct privileges.

  • The dbms_goldengate_auth.grant_admin_privilege package grants the appropriate privileges for capture and apply within a multitenant container database. This includes the container parameter, which must be set to ALL, as shown in the following example:

    dbms_goldengate_auth.grant_admin_privilege('C##GGADMIN',container=>'all')
    

See the following chapters to begin configuring the Oracle GoldenGate processes:

Chapter 7, "Configuring Capture in Integrated Mode"

Chapter 9, "Configuring Oracle GoldenGate Apply"

Close Window

Table of Contents

Installing and Configuring Oracle GoldenGate for Oracle Database

Expand | Collapse