This week, I tried to install a GoldenGate environment to make some test.

The installation was good and simple. Firstly I tested the normal capture mode and all worked correctly.

In a second time, I wanted try to use the integrated capture mode. When arrived the time to register my extract in the database, I have received an error.

GGSCI (goldengate as ggadmin@DB1) 2> register extract test database
ERROR: Cannot register or unregister EXTRACT TEST because of the following SQL error: OCI Error 44,004

Analysis

After some tests alone without any result, I opened a SR at Oracle. After some new tests, we finaly found a solution at this problem.

The first test that you have to do is to control the global name of database.

SQL> SELECT * FROM global_name;

GLOBAL_NAME
------------------------------
DB1.IT.DBI-SERVICES.COM

The second test is to control the domain name.

SQL> show parameter db_domain

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_domain                            string      it.dbi-services.com

The problem comes from the character “-” in the domain name. GoldenGate doesn’t support this character.

You must change your domain name to use the integrated capture mode.

Solution

Like I said before, the solution is to change the domain name and global name. Indeed the global name doesn’t change automaticaly with the domain name.

The command to change the domain name is :

SQL> alter system set db_domain='it.dbi.services.com' scope=spfile;

System altered.

And for the global name :

SQL> ALTER DATABASE RENAME GLOBAL_NAME TO DB1.IT.DBI.SERVICES.COM;

Database altered.

Now the database must be restarted to apply the changes.

After that it is possible to register an extract.

GGSCI (srvoracle) 1> dblogin useridalias ggadmin
Successfully logged into database.

GGSCI (srvoracle as ggadmin@DB1) 2> register extract test database
Extract TEST successfully registered with database at SCN 773304.

It works.

GoldenGate integrated capture mode vs Streams

If we check in the log, we can find the following lines :

*** 2015-11-02 13:02:56.873
dumped dictionary @ first_scn:919339
dbms_streams_adm_ivk.set_up_queue()+
dbms_streams_adm_utl.check_queue_table()+
dbms_streams_adm_utl.check_queue_exists()+{
queue_name=OGG$Q_TEST
returning TRUE
finished dbms_streams_adm_utl.check_queue_exists() }
dbms_streams_adm_utl.check_queue_enabled()+

*** 2015-11-02 13:02:56.998
dbms_logrep_util.update_dbname_mapping:Enter

We can notice that these lines correspond to the streams product. Oracle said that it is not more support and it is replaced by GoldenGate. And finally we see that it is the same product but becomes paying.

Another clue, the first thing to do to configure GoldenGate integrated capture mode is to define a size for the streams_pool.

Conclusion

In conclusion, it is important to remember that when you install an environment for GoldenGate with integrated capture mode, it is necessary to banish the character “-“.