OGG_linux搭建實驗
OGG下載地址
Download--> Middleware-->GoldenGate
http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html
http://www.oracle.com/technetwork/cn/testcontent/index-100295-zhs.html
實驗環境介紹
OS:源和目標端都是RHEL5.4_64
DB:源和目標端都是11.2.0.1.0_64,都是歸檔模式
GoldenGate:源和目標端都是適用於 Linux x86-64 上 Oracle 11g 的 Oracle GoldenGate 11.2.1.0.1 版 (86 MB)
DB_NAME、INSTANCE_NAME:源端都是DB51,目標端都是DB52
SYS、SYSTEM:源和目標端的密碼都是123456
IP:源端10.98.20.51,目標端10.98.20.52
linux解除安裝Oracle GoldenGate產品:
1、進入源或目標GG配置目錄,輸入以下命令:
gg> stop *
gg> stop mgr
2、刪除Oracle GoldenGate目錄
實驗步驟
1. 使用oracle使用者把ogg解壓到源端的/u02/ogg,目標端的/u02/ogg2,並在源端的.bash_profile中加上export PATH=$PATH:/u02/ogg,目標端的.bash_profile中加上export PATH=$PATH:/u02/ogg2,當然另外兩個變數LD_LIBRARY_PATH、CLASSPATH也一併加上。
2. 源端cd /u02/ogg,目標端cd /u02/ogg2;再ggsci> create subdirs再退出ggsci
因為create subdirs需要建立在/u02/ogg、/u02/ogg2目錄,所以需要進入該目錄
3. 源庫保證如下
alter database archivelog;
select force_logging from v$database; yes
開啟方式:alter database force logging;
select supplemental_log_data_min from v$database; yes
開啟方式:alter database add supplemental log data;
alter system set recyclebin=off scope=spfile
4. 源庫和目標庫都執行如下,建立OGG使用者和測試表,並增加tns配置
create user ggs identified by ggs default tablespace users temporary tablespace temp;
grant dba to ggs; //建立goldengate管理使用者
conn ggs/ggs
create table demo(id number primary key,ename varchar2(10)); //建立測試表,生產環境不用這這樣建立這樣的測試表
源庫增加tns如下 //ggs@sourcedb要用到
sourcedb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = DB51)
)
)
目標庫增加tns如下 //ggs@targetdb要用到
targetdb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = DB52)
)
)
5. 源端、目標端配置manger程式
cd /u02/ogg和cd /u02/ogg2
ggsci>edit params mgr
port 7809
6. 源端配置extract捕獲程式buhuo和extract傳輸程式chuanshu
捕獲程式buhuo
cd /u02/ogg
ggsci>edit params buhuo輸入如下
EXTRACT buhuo
USERID ggs@sourcedb, PASSWORD ggs
EXTTRAIL ./dirdat/ss
TABLE ggs.*;
ggsci> add extract buhuo,tranlog,begin now
ggsci> add exttrail ./dirdat/ss,extract buhuo, megabytes 5
傳輸程式chuanshu
cd /u02/ogg
ggsci>edit params chuanshu輸入如下
EXTRACT chuanshu
PASSTHRU
RMTHOST 10.98.20.52,MGRPORT 7809
RMTTRAIL ./dirdat/dd
TABLE ggs.*;
ggsci> add extract chuanshu,exttrailsource ./dirdat/ss
ggsci> add rmttrail ./dirdat/dd,extract chuanshu,megabytes 5
傳輸程式chuanshu把捕獲程式捕獲存放在源端的/u02/ogg/dirdata/ssXXX檔案存放到目標端10.98.20.52:/u02/ogg2/dirdata/ddXXX
7. 目標端配置replicate複製程式fuzhi
複製程式fuzhi
cd /u02/ogg2
ggsci> dblogin userid ggs@targetdb,password ggs
ggsci> add checkpointtable ggs.ggschkpt
ggsci> add replicat fuzhi,exttrail ./dirdat/dd,checkpointtable ggs.ggschkpt
ggsci> edit params fuzhi輸入如下
replicat fuzhi
userid ggs@targetdb, password ggs
assumetargetdefs
reperror default, discard
discardfile ./dirrpt/poratt.dsc, purge
map ggs.*, target ggs.*;
8. 源庫ggsci執行dblogin userid ggs@sourcedb,password ggs
add trandata ggs.*
9. 開啟源端程式和目標端程式
源端
cd /u02/ogg
ggsci>start mgr
ggsci>start *
ggsci>info all
目標端
cd /u02/ogg2
ggsci>start mgr
ggsci>start *
ggsci>info all
上述配置只是配置了dml相關(只要commit後就會同步到目標庫,不管目標庫是否歸檔模式),如果源庫增加一張表,壓根不會同步到目標庫
捕獲程式buhuo把資料存放在源端/u02/ogg/dirdata/ssXXX
傳輸程式chuanshu把資料存傳輸到目標端/u02/ogg2/dirdata/ddXXX
DDL的標準配置新增如下
1. 源端執行SQL> GRANT EXECUTE ON utl_file TO ggs;
2. 源和目標都關閉所有程式和服務
ggsci>stop mgr
ggsci>stop *
3. 源端cd /u02/ogg下sqlplus / as sysdba執行如下
SQL> @marker_setup.sql
SQL> @ddl_setup.sql
SQL> @role_setup.sql
SQL> GRANT GGS_GGSUSER_ROLE to ggs;
SQL> @ddl_enable.sql
SQL> @marker_status.sql
SQL> exit
4. 目標端cd /u02/ogg2下sqlplus / as sysdba執行如下
SQL> @marker_setup.sql
SQL> @ddl_setup.sql
5. 源端ggsci下執行edit params buhuo新增如下(必須加,否則就不會捕獲ddl的相關資訊,只會捕獲dml相關資訊)
DDL INCLUDE ALL
6. 源和目標ggsci啟動所有程式和服務
ggsci>start mgr
ggsci>start *
後面新增的表沒有主鍵也可以正常同步到目標庫,且新增使用者及使用者許可權都會自動同步到目標庫;但是以後新建使用者後新使用者的表不會自動同步到目標庫(貌似和windows版本的不一樣),需要重新對源端引數檔案增加TABLE ggs.*;目標端引數檔案新增map schemaname.*, target schemaname.*;
新增配置時分號;不能少來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30126024/viewspace-2124215/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ensp VRRP實驗搭建VR
- 搭建Ansible實驗環境
- OGG_windows搭建實驗Windows
- 1.搭建Hadoop實驗平臺Hadoop
- OCM實驗-測試環境的搭建
- 阿里雲體驗實驗室 教你《快速搭建Docker環境》阿里Docker
- 阿里雲體驗實驗室教程《快速搭建LAMP環境》阿里LAMP
- 阿里雲體驗實驗室 教你如何《快速搭建LNMP環境》阿里LNMP
- 阿里雲體驗實驗室 教你如何《搭建Hadoop環境》阿里Hadoop
- Oracle實驗環境搭建(windows + oracle 11g)OracleWindows
- 阿里雲體驗實驗室 教程《搭建Java Web開發環境》阿里JavaWeb開發環境
- Linux 0.11 實驗環境搭建與除錯Linux除錯
- 使用RMAN Duplicate方法搭建異名資料庫實驗資料庫
- 搭建獨立大資料實驗室的設想大資料
- RHEL9.4搭建虛擬機器實驗環境虛擬機
- 《搭建個人Leanote雲筆記本》阿里雲體驗實驗室 教程筆記阿里
- 阿里雲體驗實驗室 教你《搭建Node.js程式設計環境》阿里Node.js程式設計
- CDH5大資料實驗平臺搭建筆記H5大資料筆記
- oracle實驗記錄 (oracle 10G dataguard(1)手工搭建)Oracle
- 實驗11.ACL實驗
- 初學者如何搭建一個自己專屬的電子實驗室?
- 使用RMAN進行同名資料庫異地環境搭建實驗資料庫
- 搭建基於netfilter/iptables的防火牆實驗環境(轉)Filter防火牆
- 搭建Oracle GoldenGat (個人操作實驗文件,有興趣的可以照著實現下)OracleGo
- 實驗5.OSPF配置實驗
- 20個實驗之實驗11
- 20個實驗之實驗10
- 20個實驗之實驗16
- 30個實驗之實驗23
- 30個實驗之實驗25
- 實驗一--Easy IoT實現mqtt實驗MQQT
- 《轉》VMware vSphere 5.1 學習系列之一:實驗環境的搭建
- 實驗
- 視覺化搭建 - 元件值校驗視覺化元件
- hadoop2.2.0 搭建初體驗Hadoop
- 實驗7.Vlan劃分實驗
- 實驗10.3層vlan互通實驗
- 實驗8.Vlan Hybrid實驗