ogg源端mysql添加trandata_OGG_GoldenGate日常维护(案例)
2014-03-12 Created By BaoXinjian
一、摘要
1. 長(zhǎng)事物處理
2. 源端和目標(biāo)端增減復(fù)制表
3. 數(shù)據(jù)庫(kù)表重新同步
4. 給數(shù)據(jù)庫(kù)打補(bǔ)丁
5. 給GoldenGate打補(bǔ)丁
二、長(zhǎng)事物處理
1. 檢查長(zhǎng)事務(wù)的存在
(1). 查看交易
info EXT1, showch
(2). 查看長(zhǎng)交易
查看節(jié)點(diǎn)1 上最長(zhǎng)的10條交易
send extract EXT1, showtrans thread1, count10
2. 使用GoldenGate命令跳過(guò)或接受長(zhǎng)交易的方法
(1). 命令跳過(guò)該交易
send extract EXT1, skiptrans 5.17.27634 thread 2
(2). 該命令認(rèn)為該交易已經(jīng)提交
send extract EXT1, forcetrans 5.17.27634 thread 2
(3). 其他
該命令回事GoldenGate進(jìn)程跳過(guò)或認(rèn)為該交易已經(jīng)提交,并不會(huì)該編輯數(shù)據(jù)庫(kù)中的交易,因此強(qiáng)烈建議使用數(shù)據(jù)庫(kù)提交或者回滾交易,而不是GoldenGate去處理長(zhǎng)交易異常
3. 配置長(zhǎng)交易警告
修改Extract進(jìn)程中參數(shù)配置長(zhǎng)交易警告
以下設(shè)定GoldenGate會(huì)每隔10分鐘檢查一下長(zhǎng)交易,如果有超過(guò)12個(gè)小時(shí)的長(zhǎng)交易,GoldeGate會(huì)在根目錄下ggserr.log產(chǎn)生警告系想你
warnlongtrans 12h, checkintervals 10m
三、源端和目標(biāo)端增減復(fù)制表
1. 增加復(fù)制表
info trandata gavin.ogg_test
add trandata gavin.ogg_test
2. 修改表的結(jié)構(gòu)
Step1. 停止源和目標(biāo)端各抽取及投遞進(jìn)程,無(wú)需停止manager進(jìn)程
Step2. 修改目標(biāo)表結(jié)構(gòu)
Step3. 修改源表結(jié)構(gòu)
Step4. 如果表有主鍵,且這次修改未修改主鍵,則可以直接啟動(dòng)進(jìn)程,否則表中有主鍵,或者主鍵被修改,需通過(guò)以下方式進(jìn)行修正
deletetrandata gavin.ogg_testadd trandata gavin.ogg_test
3. 減少?gòu)?fù)制表
Step1. 停止源和目標(biāo)端各抽取及投遞進(jìn)程,無(wú)需停止manager進(jìn)程
Step2. 修改extract進(jìn)程的參數(shù)文件排除所不復(fù)制的表
tableexclued gavin.ogg_test
Step3. 修改replicat進(jìn)程的參數(shù)文件排除所不復(fù)制的表
mapexclued gavin.ogg_test
Step4. 重啟replicat和extract進(jìn)程
四、數(shù)據(jù)庫(kù)表的重新同步
如果因?yàn)楦鞣N原因造成兩邊數(shù)據(jù)不一致,需要重新進(jìn)行同步
Step1. 確認(rèn)需要同步的數(shù)據(jù)
Step2. 停止進(jìn)程replicat / pump / extract進(jìn)程
Step3. 獲取源端數(shù)據(jù)庫(kù)表當(dāng)前的SCN
select dbms_flashback.get_system_change_number current_scn from dual;
Step4. 在源端通過(guò)數(shù)據(jù)泵導(dǎo)出數(shù)據(jù)
exp apps/apps DIRECT=y BUFFER=6400000 FLASHBACK_SCN=1647598704\
CONSTRAINTS=N GRANTS=N TRIGGERS=N \file=/opt/oracle/ggate/backup/new_tab.dump log=/opt/oracle/ggate/backup/new_tab.log\
tables=GAVIN.GAVIN_TEST_OGG
Step5. 在目標(biāo)端通過(guò)數(shù)據(jù)泵導(dǎo)入數(shù)據(jù)
expdp apps/apps file=/opt/oracle/ggate/backup/new_tab.dump log=/opt/oracle/ggate/backup/new_tab.logfromuser=GAVIN touser GAVIN commit=y ignore=y buffer=5248800&
Step6. 如果有外鍵,在目標(biāo)端檢查這些外鍵并禁止
Step7. 重啟進(jìn)程并檢查,源端和目標(biāo)端數(shù)據(jù)是否一致
五、給數(shù)據(jù)庫(kù)打補(bǔ)丁
1. 如果是小的補(bǔ)丁,對(duì)OGG沒(méi)有特別的印象
2. 如果是升級(jí)之類的大補(bǔ)丁,查看metalink,對(duì)OGG也做相應(yīng)的升級(jí)處理
六、給GoldenGate打補(bǔ)丁摘要
1. 關(guān)閉所有進(jìn)程
2. 將打包補(bǔ)丁程序,壓縮至新目錄,后覆蓋原目錄
3. 重啟所有進(jìn)程
Thank and Regards
總結(jié)
以上是生活随笔為你收集整理的ogg源端mysql添加trandata_OGG_GoldenGate日常维护(案例)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: git获取管理员权限 windows_w
- 下一篇: mysql中去重的用法_mysql中去重