Golden gate missing checkpoint table
Hello gurus,
I am trying to implement live replication with Golden Gate but I can't create the checkpoint table.
GGSCI () 26> ADD CHECKPOINTTABLE
ERROR: Missing checkpoint table specification.
GGSCI (q) 27> ADD REPLICAT rep1, EXTTRAIL /t01/software/gg2/dirdat/rt
ERROR: No checkpoint table specified for ADD REPLICAT.
GGSCI () 28> ADD CHECKPOINTTABLE
ERROR: Missing checkpoint table specification.
GGSCI (qcdvap1031.gnet.qc.bell.ca) 29> edit ./GLOBALS
ERROR: Invalid command.
GGSCI () 30> edit params ./GLOBALS
GGSCHEMA GGS_OWNER
CHECKPOINTTABLE GGS_OWNER.CHKPTAB
GGSCI (q) 31> ADD CHECKPOINTTABLE GGS_OWNER.CHKPTAB
Successfully created checkpoint table GGS_OWNER.CHKPTAB.
GGSCI () 32> ADD REPLICAT rep1, EXTTRAIL /t01/software/gg2/dirdat/rt
ERROR: No checkpoint table specified for ADD REPLICAT.
Not sure what I am missing here, can anyone please help?
Thank you very much,
Hi,
Use the CHECKPOINTTABLE parameter in a GLOBALS parameter file to specify the name of a
default checkpoint table that can be used by all Replicat groups in one or more Oracle
GoldenGate instances. All Replicat groups created with the ADD REPLICAT command will
default to this table unless it is overridden by using the CHECKPOINTTABLE option of that
command.
To create the checkpoint table, use the ADD CHECKPOINTTABLE command in GGSCI.
Regards,
Similar Messages
-
Golden Gate, DBFS and SUN ODM
Gents,
DBFS - way of storing files as LOBS - cool feature, no bullet proof POCs yet. POC that I worked on got .78TB/hour to load data using external table, Oracle advertised 5TB/hour.
There has been recommendation flowing around on using DBFS for storing "Golden Gate Trail/Checkpoint files"
1. As we know, golden gate files are "Transient" and needs to be deleted once redo changes are applied.
2. Assuming DBFS is setup within Exadata (storage servers, lets say 14-FULL RACK).
3. ASM will do its own job of managing (striping and mirroring)
??Questions??
A. What is the advantage of using DBFS on Exadata shared servers than storing shared NFS, to me, Golden gate files are transient and it will be waste of shared storage and performance impact due to ASM overhead of managing transient files on Exadata boxes?
B. If we decide to store Golden Gate files on exadata, can we just store them on shared exadata server as regular files ?
C. ASM specific, can we just conditionally bypass stripping and mirroring for "Golden Gate Transient Files"?
D. ACFS Vs DBFS, why DBFS is better than ACFS ? (requirement specific question assuming I just want to store transient files for a period of time)
Thanks
-Dhavalmunno wrote:
ASM Clustered File System is supported on SUN ODM unless somebody comments on how ACFS is different than what Oracle says below.
http://www.oracle.com/technology/products/bi/db/exadata/pdf/exadata-technical-whitepaper.pdf
Please look into this pdf, page number 11.
Here is the text from page 11
Oracle Automatic Storage Management (ASM) is used as the file system and volume manager for
Exadata. ASM virtualizes the storage resources and provides the advanced volume management
and file system capabilities of Exadata. Striping database files evenly across the available Exadata
cells and disks results in uniform I/O load across all the storage hardware. The ability of ASM to
perform non-intrusive resource allocation, and reallocation, is a key enabler of the shared grid
storage capabilities of Exadata environments.
"Automatic Storage Management (ASM) != ASM Cluster File System (ACFS)
That's the difference. Exadata uses ASM, but it does not support ACFS, only DBFS.
Regards,
Greg Rahn
http://structureddata.org -
Need Help on Joining multiple tables in Golden Gate
Hi,
Can you please help me with some examples on joining multiple tables in Golden Gate. i.e, my requirement is to Join Table 1 & Table 2 in Source and Load it in Target with 10 fields from Table 1 & 5 fields from Table 2 based on the join condition between Table 1.key = Table2.key
I have been trying to do that using SQLEXEC command in Golden Gate. But, is there a way I can do this in the Extract parameter file?
Thanks for your time
Regards
SureshHi,
Thanks a lot for the prompt reply. I am able to do that for the below scenario
Source.T1.Field1
Source.T1.Field2
Source.T2.Field1
Source.T2.Field2
Target Table
T1.Field1, T1.Field2, T2.Field1, T2.Field2.
But, if I already have T2.Field1 in T1 table, then T1.Field1 takes the precendence and getting loaded. i.e., I wanted to join the table 1 & Table 2 and based on the matching condition, I will need to populate the data either from T1 or T2.
Hope you got my requirement.
Below the Data Dump file & Replicat File.
EXTRACT dpump
USERID ********, PASSWORD ********
RMTHOST *******, MGRPORT 7809
RMTTRAIL /oracle/gg/dirdat/rt
--PASSTHRU
TABLE TABLE1,
SQLEXEC (ID LOOKUP,
QUERY "SELECT FIELD1 FROM SOURCE.TABLE2 WHERE FIELD1 = :v_field1",
PARAMS ( v_field1 = field1 )),
TOKENS (tk_field_1 = @GETVAL (lookup.field1));
Replicat file
REPLICAT repjoin
ASSUMETARGETDEFS
HANDLECOLLISIONS
USERID *******, PASSWORD ********
MAP SOURCE.T1, TARGET TARGET.GG_TABLE_T1,
COLMAP ( USEDEFAULTS ,
field1 = @token ("tk_party_id"));
I eventually wanted to join like below.
select t1.field1, t1.field2, t2.field1 from t1, t2
where t1.field1 = t2.field1;
Thanks for your time again
Regards
Suresh -
Oracle golden gate mapping table to target
Hi,
I am trying to map only few selected columns from a table on the source; to the target machine. How can it be done in oracle golden gate? Is there any specific GGSCI command for it?
Regardsarch27 wrote:
Hi, I am trying to map only few selected columns from a table on the source;
to the target machine. How can it be done in oracle golden gate? Is there any specific GGSCI command for it?The column mapping is done in the parameter (*.prm) file, not in the command line interface (ggsci). See the reference guide or the admin guide for examples. Basically just map the columns you want; unused columns from the source would just be ignored.
The following maps all source columns to target columns where the source/target names are the same, and explicitly maps the target "foo" column to the source "bar" column:
<blockquote>
MAP ggs.tcustmer, TARGET ggs.tcustmer,
COLMAP (
USEDEFAULTS,
foo = bar);
</blockquote>
The following ignores all columns from the source DB that are not explicitly listed.
<blockquote>
MAP ggs.tcustmer, TARGET ggs.tcustmer,
COLMAP (
id = id,
target_firstname = src_fname,
target_lastname = src_lname,
foo = bar);
</blockquote>
See also...
* http://www.oracle.com/technetwork/middleware/goldengate/overview/index.html
* http://apex.oracle.com/pls/apex/f?p=44785:2:0:FORCE_QUERY::2,RIR,CIR:P2_GROUP_ID,P2_PRODUCT_ID:1001,2023 -
Oracle golden gate mapping table
Hi,
I am trying to map only few selected columns from a table on the source; to the target machine. How can it be done in oracle golden gate? Is there any specific GGSCI command for it?
RegardsHi;
For your issue i suggest close your thread here as changing thread status to answered and move it to Forum Home » System Management and Integration » GoldenGate which you can get more quick response
Regard
Helios -
Golden Gate for mysql5.5 extract is Abended,and not error in the file
Dear All,
golden gate for mysql5.5 to oracle 11g,extract is Abended ,but there didn't have error in the log , And sometimes the successful extraction some records;
extract :
EXTRACT EXT_M1
TRANLOGOPTIONS AltLogDest /mydata/mysqllog/binlog/binlog.index
SOURCEDB [email protected]:16052, USERID mama,PASSWORD mama
sqlexec "set names gbk;"
EXTTRAIL dirdat/m1
Dynamicresolution
TABLE mama.merchants_member_card_customer;
datapump:
EXTRACT DPRD_M1
SOURCEDB [email protected]:16052, USERID mama,PASSWORD mama
RMTHOST 192.168.2.57, MGRPORT 7089, compress --COMPRESSUPDATESETWHERE
RMTTRAIL /home/oracle/goldengate/dirdat/m1
NOPASSTHRU
TABLE mama.merchants_member_card_customer;
GGSCI>>info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING DPRD_M1 00:00:00 00:00:01
EXTRACT ABENDED EXT_M1 00:11:49 00:01:56
REPORT:
GGSCI>>view report ext_m1
Oracle GoldenGate Capture for MySQL
Version 11.2.1.0.1 OGGCORE_11.2.1.0.1_PLATFORMS_120423.0230
Linux, x64, 64bit (optimized), MySQL Enterprise on Apr 23 2012 05:23:34
Copyright (C) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
Starting at 2013-09-29 18:38:08
Operating System Version:
Linux
Version #1 SMP Wed Jun 13 18:24:36 EDT 2012, Release 2.6.32-279.el6.x86_64
Node: M46
Machine: x86_64
soft limit hard limit
Address Space Size : unlimited unlimited
Heap Size : unlimited unlimited
File Size : unlimited unlimited
CPU Time : unlimited unlimited
Process id: 6322
Description:
** Running with the following parameters **
2013-09-29 18:38:08 INFO OGG-03035 Operating system character set identified as UTF-8. Locale: zh_CN, LC_ALL:.
EXTRACT EXT_M1
TRANLOGOPTIONS AltLogDest /mydata/mysqllog/binlog/binlog.index
SOURCEDB [email protected]:16052, USERID mama100,PASSWORD ****************
sqlexec "set names gbk;"
Executing SQL statement...
2013-09-29 18:38:08 INFO OGG-00893 SQL statement executed successfully.
EXTTRAIL dirdat/m1
Dynamicresolution
TABLE mama100.merchants_member_card_customer;
2013-09-29 18:38:08 INFO OGG-01815 Virtual Memory Facilities for: COM
anon alloc: mmap(MAP_ANON) anon free: munmap
file alloc: mmap(MAP_SHARED) file free: munmap
target directories:
/home/goldengate/dirtmp.
CACHEMGR virtual memory values (may have been adjusted)
CACHESIZE: 64G
CACHEPAGEOUTSIZE (normal): 8M
PROCESS VM AVAIL FROM OS (min): 128G
CACHESIZEMAX (strict force to disk): 96G
Database Version:
MySQL
Server Version: 5.5.24-patch-1.0-log
Client Version: 6.0.0
Host Connection: 192.168.2.46 via TCP/IP
Protocol Version: 10
2013-09-29 18:38:08 INFO OGG-01056 Recovery initialization completed for target file dirdat/m1000000, at RBA 1295, CSN 000086|000000065228677.
2013-09-29 18:38:08 INFO OGG-01478 Output file dirdat/m1 is using format RELEASE 11.2.
2013-09-29 18:38:08 INFO OGG-01026 Rolling over remote file dirdat/m1000000.
2013-09-29 18:38:08 INFO OGG-00182 VAM API running in single-threaded mode.
2013-09-29 18:38:08 INFO OGG-01515 Positioning to begin time 2013-9-29 06:26:18.
** Run Time Messages **
2013-09-29 18:38:08 INFO OGG-01516 Positioned to Log Number: 86
Record Offset: 65223906, 2013-9-29 06:26:18.
2013-09-29 18:38:08 INFO OGG-01517 Position of first record processed Log Number: 86
Record Offset: 65223906, 2013-9-29 06:26:18.
TABLE resolved (entry mama100.merchants_member_card_customer):
TABLE mama100."merchants_member_card_customer";
Using the following key columns for source table mama100.merchants_member_card_customer: id.
2013-09-29 18:38:08 INFO OGG-01054 Recovery completed for target file dirdat/m1000001, at RBA 1316, CSN 000086|000000065228677.
2013-09-29 18:38:08 INFO OGG-01057 Recovery completed for all targets.
ggsevt:
2013-09-29 18:38:08 INFO OGG-00963 Oracle GoldenGate Manager for MySQL, mgr.prm: Command received from GGSCI on host localhost (START EXTRACT EXT_M1 ).
2013-09-29 18:38:08 INFO OGG-00975 Oracle GoldenGate Manager for MySQL, mgr.prm: EXTRACT EXT_M1 starting.
2013-09-29 18:38:08 INFO OGG-00992 Oracle GoldenGate Capture for MySQL, ext_m1.prm: EXTRACT EXT_M1 starting.
2013-09-29 18:38:08 INFO OGG-03035 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Operating system character set identified as UTF-8. Locale: zh_CN, LC_ALL:.
2013-09-29 18:38:08 INFO OGG-00893 Oracle GoldenGate Capture for MySQL, ext_m1.prm: SQL statement executed successfully.
2013-09-29 18:38:08 INFO OGG-01815 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Virtual Memory Facilities for: COM
anon alloc: mmap(MAP_ANON) anon free: munmap
file alloc: mmap(MAP_SHARED) file free: munmap
target directories:
/home/goldengate/dirtmp.
2013-09-29 18:38:08 INFO OGG-00993 Oracle GoldenGate Capture for MySQL, ext_m1.prm: EXTRACT EXT_M1 started.
2013-09-29 18:38:08 INFO OGG-01056 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Recovery initialization completed for target file dirdat/m1000000, at RBA 1295, CSN 000086|000000065228677.
2013-09-29 18:38:08 INFO OGG-01478 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Output file dirdat/m1 is using format RELEASE 11.2.
2013-09-29 18:38:08 INFO OGG-01026 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Rolling over remote file dirdat/m1000000.
2013-09-29 18:38:08 INFO OGG-00182 Oracle GoldenGate Capture for MySQL, ext_m1.prm: VAM API running in single-threaded mode.
2013-09-29 18:38:08 INFO OGG-01515 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Positioning to begin time 2013-9-29 06:26:18.
2013-09-29 18:38:08 INFO OGG-01516 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Positioned to Log Number: 86
Record Offset: 65223906, 2013-9-29 06:26:18.
2013-09-29 18:38:08 INFO OGG-01517 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Position of first record processed Log Number: 86
Record Offset: 65223906, 2013-9-29 06:26:18.
2013-09-29 18:38:08 INFO OGG-01054 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Recovery completed for target file dirdat/m1000001, at RBA 1316, CSN 000086|000000065228677.
2013-09-29 18:38:08 INFO OGG-01057 Oracle GoldenGate Capture for MySQL, ext_m1.prm: Recovery completed for all targets.
2013-09-29 18:38:09 INFO OGG-01054 Oracle GoldenGate Capture for MySQL, dprd_m1.prm: Recovery completed for target file /home/oracle/goldengate/dirdat/m1000002, at RBA 1435, CSN 000086|000000055512672.
2013-09-29 18:38:09 INFO OGG-01057 Oracle GoldenGate Capture for MySQL, dprd_m1.prm: Recovery completed for all targets.GGSCI>>info ext_m1 showch
EXTRACT EXT_M1 Last Started 2013-09-29 18:38 Status ABENDED
Checkpoint Lag 00:11:49 (updated 00:12:05 ago)
VAM Read Checkpoint 2013-09-29 18:26:18.665841
Current Checkpoint Detail:
Read Checkpoint #1
VAM External Interface
Startup Checkpoint (starting position in the data source):
Timestamp: 2013-09-29 18:26:18.665841
Recovery Checkpoint (position of oldest unprocessed transaction in the data source):
Timestamp: 2013-09-29 18:26:18.665841
Current Checkpoint (position of last record read in the data source):
Timestamp: 2013-09-29 18:26:18.665841
Write Checkpoint #1
GGS Log Trail
Current Checkpoint (current write position):
Sequence #: 0
RBA: 917
Timestamp: 2013-09-29 18:30:55.655570
Extract Trail: dirdat/m1
CSN state information:
CRC: 20-82-1D-34
CSN: Not available
Header:
Version = 2
Record Source = A
Type = 8
# Input Checkpoints = 1
# Output Checkpoints = 1
File Information:
Block Size = 2048
Max Blocks = 100
Record Length = 20480
Current Offset = 0
Configuration:
Data Source = 5
Transaction Integrity = 1
Task Type = 0
Status:
Start Time = 2013-09-29 18:38:08
Last Update Time = 2013-09-29 18:38:08
Stop Status = A
Last Result = 0 -
Golden gate extract and replicate process are not running.
All,
I am trying replicate data between two oracle databases using golden gate.
I am trying this scenario in a single machine(two databases and golden gate are on same windows machine)
1. I have two databases PROD, UAT both are running on 11.2 oracle home.
2. Created the ggate user both the databases, and enabled supplemental logging.
3. Ran the following scripts in both databases.
SQL> @marker_setup.sql
SQL> @ddl_setup.sql
SQL> @role_setup.sql
SQL> grant GGS_GGSUSER_ROLE to ggate;
SQL> @ddl_enable.sql
4. Connected the source database (PROD) in ggsci prompt
GGSCI (home-c07402bbc5) 79> add extract ext1, tranlog, begin now
add exttrail C:\app\Bhanu\Goldengate\lt, extract ext1
edit params ext1
EXTRACT ext1
USERID ggate@PROD, PASSWORD 123456
RMTHOST home-c07402bbc5, MGRPORT 7840
rmttrail C:\app\Bhanu\Goldengate\lt
ddl include mapped objname bhanu.* // bhanu is a schema in PROD database.
TABLE bhanu.*;
5. Connected the target database(UAT) in ggsci prompt
add checkpointtable ggate.checkpoint
edit params ./GLOBALS
GGSCHEMA ggate
CHECKPOINTTABLE ggate.checkpoint
add replicat rep1, exttrail C:\app\Bhanu\Goldengate\Mt,checkpointtable ggate.checkpoint
edit params rep1
replicat rep1
ASSUMETARGETDEFS
userid ggate@UAT, password 123456
discardfile C:\app\Bhanu\Goldengate\rep1_discard.txt, append, megabytes 10
map bhanu.*, target kiran.*;
After that started the extract, replicat using
start extract ext1, start replicate rep1
Now the status.
GGSCI (home-c07402bbc5) 103> info all
Program Status Group Lag Time Since Chkpt
MANAGER RUNNING
EXTRACT STOPPED EXT1 00:00:00 00:11:43
REPLICAT STOPPED REP1 00:00:00 00:21:16
Can you please help me what is wrong in my setup and why extract and replicate process are not running.
Edited by: user12178861 on Nov 19, 2011 11:22 AMThanks for your quick reply.
I have done few changes but extract, replicate process not running.
couple of points I would like to share with you regarding my setup.
1. I am using single golden date instance to replicate the data between PROD and UAT databases.
2. GGSCI (home-c07402bbc5) 1> dblogin userid ggate@PROD,PASSWORD 123456
Successfully logged into database.
GGSCI (home-c07402bbc5) 2> info all
Program Status Group Lag Time Since Chkpt
MANAGER RUNNING
EXTRACT STOPPED EXT1 00:00:00 01:23:29
REPLICAT STOPPED REP1 00:00:00 01:33:02
GGSCI (home-c07402bbc5) 3> VIEW REPORT EXT1
ERROR: REPORT file EXT1 does not exist.
GGSCI (home-c07402bbc5) 4> start er *
Sending START request to MANAGER ...
EXTRACT EXT1 starting
Sending START request to MANAGER ...
REPLICAT REP1 starting
GGSCI (home-c07402bbc5) 5> VIEW REPORT EXT1
ERROR: REPORT file EXT1 does not exist.
GGSCI (home-c07402bbc5) 6> info all
Program Status Group Lag Time Since Chkpt
MANAGER RUNNING
EXTRACT STOPPED EXT1 00:00:00 01:24:10
REPLICAT STOPPED REP1 00:00:00 01:33:44
Target :
GGSCI (home-c07402bbc5) 1> dblogin ggate@UAT,PASSWORD 123456
ERROR: Unrecognized parameter (GGATE@UAT), expected USERID.
GGSCI (home-c07402bbc5) 2> dblogin userid ggate@UAT,PASSWORD 123456
Successfully logged into database.
GGSCI (home-c07402bbc5) 5> add replicat rep1, exttrail C:\app\Bhanu\Goldengate/lt,checkpointtable ggate.checkpoint
ERROR: REPLICAT REP1 already exists.
GGSCI (home-c07402bbc5) 6> delete replicat rep1
Deleted REPLICAT REP1.
GGSCI (home-c07402bbc5) 7> add replicat rep1, exttrail C:\app\Bhanu\Goldengate/lt,checkpointtable ggate.checkpoint
REPLICAT added.
GGSCI (home-c07402bbc5) 8> edit params rep1
GGSCI (home-c07402bbc5) 9> start er *
Sending START request to MANAGER ...
EXTRACT EXT1 starting
Sending START request to MANAGER ...
REPLICAT REP1 starting
GGSCI (home-c07402bbc5) 10> info all
Program Status Group Lag Time Since Chkpt
MANAGER RUNNING
EXTRACT STOPPED EXT1 00:00:00 01:29:46
REPLICAT STOPPED REP1 00:00:00 00:00:48
3. Is mandatory that I need two golden gate instances running each side ?
Thanks for spending your time on this problem. -
Golden Gate Error while replicating 2 oracle databases, reason RAC
Dear All,
My RAC database and the standby database is 11gR2 on Linux.
I was configuring simple replication between RAC and standby database using Golden Gate.
When I start the extract process it does not start on the source database that is RAC, I am configuring golden gate on one node of the RAC.
Here is what I get in my log file:
2011-12-25 15:20:39 INFO OGG-00963 Oracle GoldenGate Manager for Oracle, mgr.prm: Command received from GGSCI on host 10.168.20.31 (START EXTRACT EXT1 ).
2011-12-25 15:20:39 INFO OGG-00975 Oracle GoldenGate Manager for Oracle, mgr.prm: EXTRACT EXT1 starting.
2011-12-25 15:20:39 INFO OGG-00992 Oracle GoldenGate Capture for Oracle, ext1.prm: EXTRACT EXT1 starting.
2011-12-25 15:20:39 INFO OGG-01635 Oracle GoldenGate Capture for Oracle, ext1.prm: BOUNDED RECOVERY: reset to initial or altered checkpoint.
*2011-12-25 15:20:41 WARNING OGG-01423 Oracle GoldenGate Capture for Oracle, ext1.prm: No valid default archive log destination directory found for thread 1.*
*2011-12-25 15:20:41 WARNING OGG-01423 Oracle GoldenGate Capture for Oracle, ext1.prm: No valid default archive log destination directory found for thread 2.*
2011-12-25 15:20:42 INFO OGG-00546 Oracle GoldenGate Capture for Oracle, ext1.prm: Default thread stack size: 10485760.
2011-12-25 15:20:42 ERROR OGG-00446 Oracle GoldenGate Capture for Oracle, ext1.prm: The number of Oracle redo threads (2) is not the same as the number of checkpoint threads (1). EXTRACT groups on RAC systems should be created with the THREADS parameter (e.g., ADD EXT <group name>, TRANLOG, THREADS 2, BEGIN...).
2011-12-25 15:20:42 ERROR OGG-01668 Oracle GoldenGate Capture for Oracle, ext1.prm: PROCESS ABENDING.
Kindly suggest what I have to do to fix this error.
Regards,
ImranFor more understanding of the problem here is the output of command:
view report ext1
GGSCI (racnode1) 2> view report ext1
Oracle GoldenGate Capture for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 11g on Oct 7 2011 05:37:17
Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
Starting at 2011-12-26 10:50:37
Operating System Version:
Linux
Version #1 SMP Fri Aug 26 19:08:58 EDT 2011, Release 2.6.18-274.3.1.el5xen
Node: racnode1
Machine: x86_64
soft limit hard limit
Address Space Size : unlimited unlimited
Heap Size : unlimited unlimited
File Size : unlimited unlimited
CPU Time : unlimited unlimited
Process id: 11430
Description:
** Running with the following parameters **
extract group
extract ext1
connection to the database
userid ggs_owner, password ******
hostname and port for trail
rmthost x.x.x.x, mgrport ****
--path and name for the trail
rmttrail /u01/app/ggs/dirdat/lt
--DDL Support
ddl include mapped objname radius_dsl.*;
--DML
table test.*;
2011-12-26 10:50:37 INFO OGG-01635 BOUNDED RECOVERY: reset to initial or altered checkpoint.
Bounded Recovery Parameter:
Options = BRRESET
BRINTERVAL = 4HOURS
BRDIR = /u01/app/ggs
CACHEMGR virtual memory values (may have been adjusted)
CACHEBUFFERSIZE: 64K
CACHESIZE: 8G
CACHEBUFFERSIZE (soft max): 4M
CACHEPAGEOUTSIZE (normal): 4M
PROCESS VM AVAIL FROM OS (min): 16G
CACHESIZEMAX (strict force to disk): 13.99G
Database Version:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
Database Language and Character Set:
NLS_LANG environment variable specified has invalid format, default value will be used.
NLS_LANG environment variable not set, using default value AMERICAN_AMERICA.US7ASCII.
NLS_LANGUAGE = "AMERICAN"
NLS_TERRITORY = "AMERICA"
NLS_CHARACTERSET = "WE8MSWIN1252"
Warning: your NLS_LANG setting does not match database server language setting.
Please refer to user manual for more information.
2011-12-26 10:50:38 INFO OGG-00546 Default thread stack size: 10485760.
2011-12-26 10:50:38 INFO OGG-01515 Positioning to begin time Dec 26, 2011 9:35:19 AM.
Here is the output of command (From target database)
view report rep1
Oracle GoldenGate Delivery for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 11g on Oct 7 2011 05:44:59
Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
Starting at 2011-12-25 11:24:46
Operating System Version:
Linux
Version #1 SMP Tue May 31 13:22:04 EDT 2011, Release 2.6.18-238.12.1.el5
Node: standbydb.etisalcom.private
Machine: x86_64
soft limit hard limit
Address Space Size : unlimited unlimited
Heap Size : unlimited unlimited
File Size : unlimited unlimited
CPU Time : unlimited unlimited
Process id: 8812
Description:
** Running with the following parameters **
Replicat group
replicat rep1
--source and target definitions
ASSUMETARGETDEFS
target database login
userid ggs_owner, password ******
file for dicarded transaction
discardfile /u01/app/ggs/discard/rep1_discard.txt, append, megabytes 10
--ddl support
DDL
Specify table mapping -
map test.*, target test.*;
CACHEMGR virtual memory values (may have been adjusted)
CACHEBUFFERSIZE: 64K
CACHESIZE: 512M
CACHEBUFFERSIZE (soft max): 4M
CACHEPAGEOUTSIZE (normal): 4M
PROCESS VM AVAIL FROM OS (min): 1G
CACHESIZEMAX (strict force to disk): 881M
Database Version:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
Database Language and Character Set:
NLS_LANG environment variable specified has invalid format, default value will be used.
NLS_LANG environment variable not set, using default value AMERICAN_AMERICA.US7ASCII.
NLS_LANGUAGE = "AMERICAN"
NLS_TERRITORY = "AMERICA"
NLS_CHARACTERSET = "WE8MSWIN1252"
Warning: your NLS_LANG setting does not match database server language setting.
Please refer to user manual for more information.
** Run Time Messages **
I have also observed that the process extract stops after few minutes. When it stops and I view the log it says:
*ERROR OGG-00446 Oracle GoldenGate Capture for Oracle, ext1.prm: error 2 (No such file or directory) opening redo log +FRA/racdb/archivelog/1_12041_763744886.dbf*
Means it is not getting the path of ASM archive log destination.
what should I do in this case, kindly help.
Regards,
Imran -
Oracle 11.1.0.7:
Before I ask my simple question. Is there a place I can get detailed documentation of Golden Gate? I got some documentation but that is very high level. I am looking for some document or tutorial like the ones Oracle has on tahiti.oracle.com.
We are currently using streams and personally worked on it. I see following issues:
1. When some errors occur in dba_apply_error it's really slow to re-execute them. Recovery is very slow
2. Streaming the LOBs over of just 512 bytes makes the CCA very slow
3. Manageability of scripts, configuration etc. is a headache
4. Come accross streams bugs all the time
From what I have read about golden gate is that is super fast and better than streams. I haven't read about it so I don't have complete comparision. Could someone with similar experience provide the insight.
Also, if someone can please help me get right detailed documents would be really great.Hi,
Think the goldengate documentation provide adequate help to install and configure oracle goldengate process. I can put down a sample configuration for you to get started.
Installing GoldenGate and configuring a extract replicat process.
First FTP the installation zip in binary mode from the PC to the installation directory on machine where Oracle GoldenGate suppose to be installed.
Use gzip to decompress the file.
gzip –d <file_name>.gz
Extract the files
Use tar to extract the files. All GoldenGate files will be placed in the current subdirectory.
tar –xvf <file_name>.tar
Create folders
Create the required sub-directories in the installation directory by using
Shell> cd <install location>
Shell> ggsci
GGSCI> create subdirs
GGSCI> exit
Oracle-specific installation steps
The below steps are only required when GoldenGate will be capturing data from the server. Therefore it is only needed when you are installing GoldenGatef or Oracle as your <source> environment.
You need to turn on supplemental logging at the database level. This command requires the ALTER DATABASE permissions.
Shell> sqlplus <login>/<password>
SQL> alter database add supplemental log data;
Now Switch to the next redo log file.
SQL> alter system switch logfile;
SQL> exit
Then now configure manager parameter file.
GGSCI> EDIT PARAMS MGR
• Use the editor to assign a port
--GoldenGate Manager parameter file
PORT <port>
example: PORT 7840
• To Start the Manager, issue following command
GGSCI> START MGR
• To Verify that the Manager has started, issue the following command
GGSCI> INFO MGR
Now Configure Supplemental logging.
By default, if not supplimentory logging enabled , only the change vectors will be logged in redo logs So inorder to get the columns required for constructing the image by replicat in target we require atleast minimum supplimentory logging enabled in database level and table level logging required for proper functioning of Oracle Goldengate Software.
Using GGSCI, log in to the database on the <source> and turn on supplemental logging for the the tables configured for replication
Shell> ggsci
GGSCI> DBLOGIN USERID <login>
GGSCI> ADD TRANDATA <owner/schema>.<table-name>
Do this for all the tables.
Configure change capture
1. Add the Extract group
Execute the following command on the <source> system to add an Extract group
GGSCI> ADD EXTRACT <extract-name>, TRANLOG, BEGIN NOW
Verify the results:
GGSCI> INFO EXTRACT <extract-name>
Create the Extract parameter file
Execute the following commands on the <source> system.
GGSCI> EDIT PARAM <extract-name>
EXTRACT <extract-name>
USERID <login>, PASSWORD <password>
RMTHOST <target>, MGRPORT <port>
RMTTRAIL ./dirdat/<trail id>
TABLE <owner/schema>.<table-name>
TABLE <owner/schema>.<table-name>
for example
extract testext
userid ggs password ggs
rmthost 172.25.25.177
rmttrail ./dirdat/tr
table scott.mytable;
table scott.yourtable;
Define the GoldenGate trail
Execute the following command on the <source> to add the trail that will store the changes on the <target>.
GGSCI> ADD RMTTRAIL ./dirdat/<trail id>, EXTRACT <extract-name>
Verify the results:
GGSCI> INFO RMTTRAIL *
Start the capture process
GGSCI> START EXTRACT <extract-name>
Configure Change Delivery or replicat
we have to do the following
• Set up the checkpoint table on the target system.(this is optional)
• Create a named group that includes the Replicat process and the checkpoint tables.
• Configure the Replicat group by adding parameters.
• Start the Replicat group.
Now we will check how to set up the checkpoint table (this is a optional settings)
Create a GLOBALS file on the target system
Execute the following commands on the <target> system.
Create and edit the GLOBALS parameter file to add the checkpoint table.
Shell> cd <install location>
Shell> ggsci
GGSCI> EDIT PARAMS ./GLOBALS
In the text editor, type:
CHECKPOINTTABLE <owner/schema>.ggschkpt
• Record the checkpoint table owner and name, then save and close the file.
Please Note: You could name the table anything you want
• Verify that the GLOBALS file was created in the root GoldenGate directory, and remove any file extension that was added.
Activate the GLOBALS parameters
For the GLOBALS configuration to take effect, you must exit the session in which
the changes were made. Execute the following command to exit GGSCI.
GGSCI> EXIT
Add a Replicat checkpoint table
On the <target> system, execute the following commands in GGSCI:
Shell> cd <install location>
Shell> ggsci
GGSCI> DBLOGIN USERID <login>, PASSWORD <password>
GGSCI> ADD CHECKPOINTTABLE
Configure Change Delivery
Add the Replicat group
Execute the following command on the <target> system to add a delivery group
named <replicat-name>
GGSCI> ADD REPLICAT <replicat-name>, EXTTRAIL ./dirdat/<trail id>
Note: Refer to your Extract set up for the correct two-character <trail id>.
Create Replicat parameter file
Execute the following commands on the <target> system to bring up the parameter
file in the editor.
GGSCI> EDIT PARAM <replicat-name>
-Type in the following parameters
REPLICAT <replicat-name>
USERID <login>, PASSWORD <password>
HANDLECOLLISIONS
ASSUMETARGETDEFS
DISCARDFILE ./dirrpt/RORA<unique id>.DSC, PURGE
MAP <owner/schema>.<source table-name>, TARGET <owner/schema>.<target table-name>;
Start the Replicat process
GGSCI> START REPLICAT <replicat-name>
Verify the results:
GGSCI> INFO REPLICAT <replicat-name>
The above i scrapped is a basic extract-replication process which you can scale up once you get accustomed with this beautiful product.
Thanks & Regards,
Antony Joseph Jethu. -
Sequence Error During Golden Gate Replication! Need Hints
Dear All,
I am replicating 2 databases one way, from production to standby using golden gate.
Both databases are 11gR2 and on Linux.
Replication runs smooth for couple of days and then ends up with this error:
ERROR OGG-01296 Error mapping from ETISLBILLING.PAR_TBLPARNODEIDENTI to ETISLBILLING.PAR_TBLPARNODEIDENTI.
Parent Ket Not Found ETISLBILLING.FK_PARTNERNODE_IDENT
Trigger : ETISLBILLING.TRG_PAR_TBLPARTNERNODE Sequence : SEQ_PAR_TblPartnerIdenti
ORA-20000: Sequence value cannot be changed.
Main error is that value of sequence that is executed during the after insert trigger, does not change and trigger raise error hence the replication process is stopped.
I am just worried that the same triggers and sequences are executed successfully on production database and standby database has is exactly the same as production.
Is there some special treatment for sequences?
Kindly share your experience and give tips to handle this situation
Regards, ImranHi,
Hope this helps
Jan S.
FROM MOS: OGG Replicat Encounters OGG-01396 OGG-00869 ORA-01400 on Primary Key Column [ID 1308824.1]
Cause
==================
from the replicat report, first this error occurs:
WARNING OGG-01396 A complete after image is not available
in <schema.table> at rba 123456 in file ./dirdat/yyy, while inserting
a row into <schema.table> due to missing target row for a key update operation.
NOCOMPRESSUPDATES or FETCHOPTIONS FETCHPKUPDATECOLS may be specified in the
EXTRACT parameter file to include a complete image for key update operations.
The offending record is a primary key update, ... probably the key
<to be found at the mentioned rba 123456 in file ./dirdat/yyy> is not available on target
if the PK is not available at target side, then this error is expected, because HANDLECOLLISIONS turns the PK update into an insert as result of no target record to update.
The problem is that the source PK update record doesn't contain all the after image columns. That is also expected because the update record is intended to only update the affected columns.
As a workaround use FETCHOPTIONS FETCHPKUPDATECOLS on the capture/extract side to get all the after images of the record so that when a HANDLECOLLISIONS logic kicks in, it will be
able to successfully convert the original PK update into insert with all the after image present.
Solution
==================
First check the affected trail file yyy at RBA 123456 with logdump to verify, if the PK update does not have the complete key information as described.
If that is the case and the target table does not have the corresponding PK entry, this issue is hit. Otherwise it is something different.
As a workaround use
==================
FETCHOPTIONS FETCHPKUPDATECOLS on the capture/extract side to get all the after images of
the record so that when a HANDLECOLLISIONS logic kicks in, it will be
able to successfully convert the original PK update into insert with all the after image present. -
hi
IS there any doc to explain the checkpointing in golden gate in detail.
How GG manages transaction integrity in case there is corruption of trail files in the source or target end.
Is there any checkpoint table in the source end as well as there is target end?
In case the GG crashed at the source end how it manages to capture the transaction from online redo logs since it got crashed?
Any mechanism to check the synchronization between both the databases?http://appcrawler.com/wordpress/2012/04/11/how-often-does-goldengate-checkpoint/
http://www.scribd.com/doc/62957348/73/GoldenGate-checkpoint-table
http://decipherllc.blogspot.in/2010/07/oracle-goldengate-best-practices-and.html -
Hi,
Is it possible to transform one row from source database into multiple rows in target database using Golden Gate?
Thanks,
DeepakAnother way is using SQLEXEC:
Suppose we have:
at source db -
create table test.wide (id number primary key, COL1 VARCHAR2(25), COL2 VARCHAR2(25), COL3 VARCHAR2(25));at target db -
create table test.thin (id number primary key, col_name VARCHAR2(10), col_value VARCHAR2(25));then in replicat params -
--Replicat group --
REPLICAT REP2
--source and target definitions
--ASSUMETARGETDEFS
SOURCEDEFS /u01/app/oracle/product/11.1.1.1.2ogg411g/dirdef/sourcedef
--target database login --
USERID ogg, PASSWORD ogg
--file for dicarded transaction --
DISCARDFILE /u01/app/oracle/product/11.1.1.1.2ogg411g/discard/rep1_discard.txt, APPEND, MEGABYTES 10
--ddl support
DDL
--Specify table mapping ---
MAP test.t1, TARGET test.t11g, COLMAP (USEDEFAULTS, VCH=@STRNUM(NM));
MAP test.CITIES, TARGET test.CITIES;
MAP test.COUNTRIES, TARGET test.COUNTRIES;
MAP test.LOBEXP, TARGET test.LOBEXP;
MAP test.wide, TARGET test.thin, COLMAP (USEDEFAULTS, COL_NAME="COL1", COL_VALUE=COL1), &
SQLEXEC (ID COL2PROC, QUERY "insert into test.thin values (:id_params+1,'COL2',:value_param)", PARAMS (id_params = id, value_param = COL2)), &
SQLEXEC (ID COL3PROC, QUERY "insert into test.thin values (:id_params+2,'COL3',:value_param)", PARAMS (id_params = id, value_param = COL3)), &
SQLEXEC (ID COL_DELE, ON DELETE, QUERY "delete from test.thin where id in (:id_params+1,:id_params+2)", PARAMS (id_params = id)), &
SQLEXEC (ID COL2UPDA, ON UPDATE, QUERY "update test.thin set col_value=:value_params where 1=:is_updated and id=:id_params+1", PARAMS (is_updated = @IF(@COLTEST(COL2,MISSING,
INVALID),0,1), value_params = COL2, id_params = id)), &
SQLEXEC (ID COL3UPDA, ON UPDATE, QUERY "update test.thin set col_value=:value_params where 1=:is_updated and id=:id_params+2", PARAMS (is_updated = @IF(@COLTEST(COL3,MISSING,
INVALID),0,1), value_params = COL3, id_params = id));
--MAP test.account, TARGET test.thin, COLMAP(USEDEFAULTS, COL_NAME='COL1', COL_VALUE=COL1);
DDLERROR 24344 DISCARD;An extractor params would be -
--extract group--
EXTRACT ext1
--connection to database--
USERID ogg, PASSWORD xxx
EXTTRAIL /u01/app/oracle/product/11.1.1.12ogg/dirdat/ss
SEQUENCE test.*
--DDL support
DDL INCLUDE MAPPED OBJNAME test.*
--DML
TABLE test.*;Works fine - just tested.
Edited by: Artem Khisamiev on 15.10.2012 4:09
Add DELETE and UPDATE DML improvements to replicat params. -
Golden Gate Initial Load - Performance Problem
Hello,
I'm using the fastest method of initial load. Direct Bulk Load with additional parameters:
BULKLOAD NOLOGGING PARALLEL SKIPALLINDEXES
Unfortunatelly the load of a big Table 734 billions rows (around 30 GB) takes about 7 hours. The same table loaded with normal INSERT Statement in parallel via DB-Link takes 1 hour 20 minutes.
Why does it take so long using Golden Gate? Am I missing something?
I've also noticed that the load time with and without PARALLEL parameter for BULKLOAD is almost the same.
Regards
PawelHi Bobby,
It's Extract / Replicat using SQL Loader.
Created with following commands
ADD EXTRACT initial-load_Extract, SOURCEISTABLE
ADD REPLICAT initial-load_Replicat, SPECIALRUN
The Extract parameter file:
USERIDALIAS {:GGEXTADM}
RMTHOST {:EXT_RMTHOST}, MGRPORT {:REP_MGR_PORT}
RMTTASK replicat, GROUP {:REP_INIT_NAME}_0
TABLE Schema.Table_name;
The Replicat parameter file:
REPLICAT {:REP_INIT_NAME}_0
SETENV (ORACLE_SID='{:REPLICAT_SID}')
USERIDALIAS {:GGREPADM}
BULKLOAD NOLOGGING NOPARALLEL SKIPALLINDEXES
ASSUMETARGETDEFS
MAP Schema.Table_name, TARGET Schema.Table_tgt_name,
COLMAP(USEDEFAULTS),
KEYCOLS(PKEY),
INSERTAPPEND;
Regards,
Pawel -
Golden Gate configuration with 12c Database
Hi,
I have a requirement to configure the golden gate with oracle database 12c with container database.
Versions:
Golden Gate - 12.1.2.1.0
Oracle Database - 12.1.0.2
Here we need to configure with container database and two pluggable database.
Kindly suggest me the steps for configuration.
Regards
KumarHello Kumar,
I think you need to do the same setup as other GG versións :
1. Install Golden Gate software on extract/replicat sites
2. Create GG User with the necesary privs.
3. Set Min Logging level at database level.
4. Set TRANDATA for the tables that you like capture changes
After, you need analyze the objects that you need replicate and define the capture process.
To use GG on a MultiTenant Database, you need define at extract level the PDBs and the objects that you need extract. Remeber that in a Multi-tenant enviorment, only a set of redo logs exists,then the capture process is Multi-Tenant aware, because allow
set the PDB and the schema and the objects that you like capture. It is called qualified three-part name, PDB.SCHEMA.TABLE
Example:
SOURCECATALOG FINANCE TABLE SAP.*; ---> Source is the way to inlcude the PDB
TABLE REPORTS.*;
SOURCECATALOG HR TABLE SIEBEL.*;
TABLE REPORTS.*;
SOURCECATALOG MFG
TABLE CUSTOMER.ORDERS;
TABLE REPORTS.*;
TABLE HQ.LOCATIONS.*;
In this example, Extract captures the following:
All tables in the SAP and REPORTS schemas in the FINANCE PDB.
All tables in the SIEBEL and REPORTS schemas in the HR PDB.
All tables in the CUSTOMER and REPORTS schemas in the MFG PDB.
For the last TABLE statement, Extract captures all tables in the LOCATIONS schema in the HQ PDB. This statement is a fully qualified three-part name and overrides the previous SOURCECATALOG specification.
You have more info at : http://docs.oracle.com/goldengate/1212/gg-winux/GWURF/gg_parameters147.htm
Also, you have a dedicated chapter of using GG in a Multi-Tenant env at: https://docs.oracle.com/goldengate/1212/gg-winux/GIORA/config_containerdb.htm#BDCFDFDE
I hope help.
Regards
Arturo -
Golden gate supports directory??
Hello ,
I am new to golden gate.
i have made 1 oracle directory in oracle 11 g. when i am replicating data using golden gate, then i am getting the error-->directory doesnot exists
-->Fatal Error executing ddl replication
Do golden gate supports directory or not.. ?
Thanks and regards
Attinder Pal SinghDirectory in what context? The are directories within the GG installation, and Oracle has directories - which are database objects that point to a directory on the file system and has nothing whatsoever to do with GG. You may happen to have the OS directory be used for GG and the same directory used by Oracle, but that means nothing in terms of them working together.
You have an error stack, so post what it is instead of leaving people to guess which directory is missing or does not exist. Was your DDL setup successful? What is the output of the check script?
Maybe you are looking for
-
Habitual Script Errors with Verson 29.0.1
While pop-up script errors have bedeviled Firefox since nearly forever, I've found after upgrading to version 29.0.1 to have even more of a problem with this. In particular, on the website http://www.wonkette.com/ I've had a terrible time just in the
-
Avoiding PageParserPath but still having code in your page layout
I have a page layout that has some custom c# in it (yes, I realize that's not a great practice; it's some legacy stuff I don't have time to rework right now). I have this page layout deployed in our farm today... and it works just charming... *and*
-
Can I restore deleted videos?
My battery life tanked on my 5s two days ago rather suddenly, apple genius guy recommended I reset my phone. He did it for me, basically erased everything and restarted the phone. I have the large subscription to icloud, everything is backed up. I ha
-
Need to store explan plan details in a superate table
Hi , After execution of explain , I need to store query and that query execution time in a table. Please help me , how to write a procedure for this. Thanks, Rajesh
-
How can I get the printout of the SmartForm? What is the problem?
Hi everyone; I am newest at Abap.I am doing a new program that get the billing informations and show in smartform. I get the all İnformation but when I click the printview button , printview doesn't open and close automatilly. The call function is be