One of the things I wanted to add is a troubleshooting guide to solve the most common errors you may find when doing the replication for yourself, so here is the list of the...
Top 7 errors in Oracle GoldenGate12c
(when you are working with Oracle12c multitenant databases)
(... and of course, feel free to join the course with a special price here!) ;)
ERROR #1
OGG-00303 Oracle GoldenGate Manager for Oracle, mgr.prm: Unable to connect to database using user c##gg_user. Ensure that the necessary privileges are granted to the user.
CAUSE: the user c##gg_user doesn't exist in the database or doesn't have the proper privileges.
SOLUTION: Ensure the user is created and privileges are granted as follows:
SQL> create user c##gg_user identified by gg_user
2 default tablespace goldengate
3 temporary tablespace temp;
User created.
SQL> alter user c##gg_user quota unlimited on goldengate;
User altered.
SQL> grant create session, connect, resource to c##gg_user container=all;
Grant succeeded.
SQL> grant alter any table, alter system to c##gg_user container=all;
Grant succeeded.
SQL> grant set container to c##gg_user;
Grant succeeded.
SQL> grant select any dictionary to c##gg_user container=all;
Grant succeeded.
SQL> grant dba to c##gg_user container=all;
Grant succeeded.
SQL> exec dbms_goldengate_auth.grant_admin_privilege
('c##gg_user',container=>'all')
PL/SQL procedure successfully completed.
SQL> exec dbms_goldengate_auth.grant_admin_privilege
('c##gg_user','capture',container=>'all')
PL/SQL procedure successfully completed.
SQL> exec dbms_goldengate_auth.grant_admin_privilege
('c##gg_user','apply',container=>'all')
PL/SQL procedure successfully completed.
***
ERROR #2
OGG-02091 Operation not supported because enable_goldengate_replication is not set to true.
CAUSE: The parameter enable_goldengate_replication is set to false
SOLUTION: Set the parameter to true by connecting to sqlplus as sysdba and enable the GoldenGate parameter with the following syntax:
SQL> alter system set enable_goldengate_replication=true;
System altered.
***
ERROR #3
OGG-02058 The Oracle source database is not configured properly to support integrated capture. The following configuration error must be fixed: ARCHIVELOG mode must be enabled on this Oracle database.
CAUSE: The database is in NOARCHIVELOG mode and integrated capture needs ARCHIVELOG enabled.
SOLUTION: Enable archivelog in the database before set up the extract process and don´t forget to add the supplemental logging too!
[oracle@localhost ~]$ sqlplus / as sysdba
SQL*Plus: Release 12.2.0.1.0 Production on Wed Jun 6 08:10:13 2018
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.
Total System Global Area 838860800 bytes
Fixed Size 8798312 bytes
Variable Size 339742616 bytes
Database Buffers 486539264 bytes
Redo Buffers 3780608 bytes
Database mounted.
SQL> alter database archivelog;
Database altered.
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 27
Next log sequence to archive 29
Current log sequence 29
SQL> alter database open;
Database altered.
SQL> alter database force logging;
Database altered.
SQL> alter database add supplemental log data (all) columns;
Database altered.
***
ERROR #4
OGG-00446 Oracle GoldenGate Delivery for Oracle, rep1.prm: Checkpoint table orcl.c##gg_user.checkpoint does not exist. Create this table with the ADD CHECKPOINTTABLE command.
CAUSE: the checkpoint table does not exist as the defined name shown.
SOLUTION: Ensure the process definition and the checkpoint table have the exact same name.
***
ERROR #5
OGG-02022 Oracle GoldenGate Capture for Oracle, ext1.prm: Logmining server does not exist on this Oracle database.
CAUSE: When a extract process can't access the Logmining database it's mainly for a strange limitation to only one extract for each pluggable database or because the extract process was not properly registered in the database.
SOLUTION: check if extract is registered and you have only one for pluggable database (pump extract doesn't count, as the source is the dirdat directory instead of the integrated log).
***
ERROR #6
OGG-15312 Oracle GoldenGate Command Interpreter for Oracle: Cannot obtain database version information because verification of database login failed with next error: Not logged into database, use DBLOGIN.
CAUSE: login failed, not logged in
SOLUTION: check dblogin syntax and perform a proper login with the correct user and password.
***
ERROR #7
OGG-02650 Oracle GoldenGate Capture for Oracle, pump1.prm: Source wildcard specification hr.* does not include a catalog name, but the source table name ORCL.HR.EMPLOYEES includes a catalog name.
CAUSE: when specifying a SOURCECATALOG you don't have to prefix the pluggable database in the table definition.
SOLUTION: remove the ORCL. prefix
***