viernes, agosto 24, 2018

TOP 7 ERRORS in Oracle GoldenGate12c that will save your day

Recently I made a Udemy course about creating a replication environment using Oracle GoldenGate12c. I built a workshop everybody can follow step by step setting up a logical replication using two OraLinux virtual machines, and installing and configuring GoldenGate step by step.

Oracle GoldenGate12c Workshop

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!) ;)


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

PL/SQL procedure successfully completed.

SQL> exec dbms_goldengate_auth.grant_admin_privilege

PL/SQL procedure successfully completed.

SQL> exec dbms_goldengate_auth.grant_admin_privilege

PL/SQL procedure successfully completed.



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.



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 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 - 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.



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.



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).



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.



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


No hay comentarios: