這篇文章主要講解了“ogg怎么防止數(shù)據(jù)死循環(huán)同步”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“ogg怎么防止數(shù)據(jù)死循環(huán)同步”吧!
10年積累的網(wǎng)站設(shè)計制作、成都做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站策劃后付款的網(wǎng)站建設(shè)流程,更有萬榮免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。最近在ORACLE 到MYSQL的使用OGG進(jìn)行數(shù)據(jù)遷移中遇到了數(shù)據(jù)在雙向同步數(shù)據(jù)死循環(huán)的問題,在正常對oracle的同步上,我們使用以下參數(shù)來防止抽取進(jìn)程對復(fù)制進(jìn)程提交的事務(wù)進(jìn)行抽?。?/p>
TRANLOGOPTIONS EXCLUDEUSER OGG GETAPPLOPS IGNOREREPLICATES
實(shí)際上tranlogoptions excludeuser?。希牵恰〉淖饔檬窃诔槿∪罩緯r排除掉OGG用戶,GETAPPLOPS 指抓取應(yīng)用的事務(wù), IGNOREREPLICATES是忽略掉復(fù)制進(jìn)程的事務(wù)。
GETAPPLOPS | IGNOREAPPLOPS: Controls whether or not data operations (DML) produced by business applications except Replicat are included in the content that Extract writes to a specific trail or file. GETREPLICATES | IGNOREREPLICATES: Controls whether or not DML operations produced by Replicat are included in the content that Extract writes to a specific trail or file.
但到了MYSQL 端進(jìn)行抽取發(fā)現(xiàn)抽取進(jìn)程不支持tranlogoptions excludeuser參數(shù),此時即使加了IGNOREREPLICATES因識別不到復(fù)制進(jìn)程而不生效。
導(dǎo)致mysql 往 oracle同步時仍會抽取掉一部分?jǐn)?shù)據(jù)往oracle走,而在我的ORACLE 到MYSQL的同步中我實(shí)際是的關(guān)系是
O ———>O————>M 之后M再分別往兩個O同步。
在《Administering Oracle GoldenGate for Windows and UNIX》手冊上9.3 Preventing Data Looping中介紹了各種數(shù)據(jù)庫端如何識別復(fù)制進(jìn)程的的參數(shù),可以來防止抽取進(jìn)程抽取復(fù)制進(jìn)程的事務(wù):
DB2 z/OS, DB2 LUW, DB2 for i, and Informix
TRANLOGOPTIONS EXCLUDEUSER user
Informix中需要特別使用 EXCLUDEUSERID Database_uid
MySQL and NonStop SQL/MX
TRANLOGOPTIONS FILTERTABLE table_name
這個table_name是指checkpointtable
Oracle
在復(fù)制進(jìn)程設(shè)置標(biāo)簽,例如
DBOPTIONS SETTAG 0935
然后在抽取進(jìn)程排除標(biāo)簽
TRANLOGOPTIONS EXCLUDETAG 0935
如果有多個標(biāo)簽,抽取進(jìn)程必須每個都加上
當(dāng)然也可用使用排除用戶的
TRANLOGOPTIONS EXCLUDEUSER user
SQL Server
TRANLOGOPTIONS EXCLUDETRANS transaction_name
這個事務(wù)名不理解,如果未設(shè)置應(yīng)該默認(rèn)的事務(wù)名是 ggs_repl.。原文解釋:
This parameter statement is only required if the Replicat transaction name is set to something other than the default of ggs_repl.
Sybase
TRANLOGOPTIONS EXCLUDETRANS transaction name
or
TRANLOGOPTIONS EXCLUDEUSER user name
感謝各位的閱讀,以上就是“ogg怎么防止數(shù)據(jù)死循環(huán)同步”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對ogg怎么防止數(shù)據(jù)死循環(huán)同步這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!