共計 4351 個字符,預計需要花費 11 分鐘才能閱讀完成。
這篇文章主要介紹“Oracle GoldenGate 配置參數生產端分析”,在日常操作中,相信很多人在 Oracle GoldenGate 配置參數生產端分析問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Oracle GoldenGate 配置參數生產端分析”的疑惑有所幫助!接下來,請跟著丸趣 TV 小編一起來學習吧!
OGG 的版本為:11.2.1.0.4
Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.4 14636914 OGGCORE_11.2.1.0.4_PLATFORMS_121007.2020
HP/UX, IA64, 64bit (optimized), Oracle 10g on Oct 8 2012 02:26:37
Copyright (C) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
啟動的進程
GGSCI info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING DPEYA 00:00:00 00:00:02
EXTRACT RUNNING EXTYA 00:00:02 00:00:05
EXTYA 為抽取進程,DPEYA 為投遞進程
管理進程配置
GGSCI view params mgr
PORT 7839
DYNAMICPORTLIST 7840-7914
–AUTORESTART EXTRACT *, RETRIES 5, WAITMINUTES 7
PURGEOLDEXTRACTS ./dirdat/*, USECHECKPOINTS, MINKEEPDAYS 10
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45
PORT 7839
通信端口 7839。生產端和災備端需要保持一致。
DYNAMICPORTLIST 7840-7914
動態端口列表的范圍從 7840 到 7914。當制定端口被占用或者出現通信故障,管理進程將會從列表中選擇下一個端口嘗試連接,避免通信端口的單點故障。
–AUTORESTART EXTRACT *, RETRIES 5, WAITMINUTES 7
當提取進程中斷后嘗試自動重啟,每隔 7 分鐘嘗試啟動一次,嘗試 5 次。OGG 運維人員通常會注釋掉這條配置,更喜歡用手工重啟的方式來控制。
PURGEOLDEXTRACTS ./dirdat/*, USECHECKPOINTS, MINKEEPDAYS 10
定期清理 dirdat 路徑下的本地隊列(local trail)。保留期限 10 天,過期后自動刪除。從而控制隊列文件的目錄不會增長過大。
LAGREPORTHOURS 1
每隔一小時檢查一次傳輸延遲情況
LAGINFOMINUTES 30
傳輸延時超過 30 分鐘將寫入錯誤日志
LAGCRITICALMINUTES 45
傳輸延時超過 45 分鐘將寫入警告日志
通常在一些海量數據的分區表中容易出現傳輸延時的現象。建議在災備端啟動多個復制進程(replicat),為這些大表單獨的開啟專用通道。
抽取進程配置
GGSCI 3 view params extya
EXTRACT extya
SETENV (NLS_LANG= AMERICAN_AMERICA.UTF8)
USERID goldengate, PASSWORD AACAAAAAAAAAAAJAPJYATHVIMGMAOFHIUCUEPFYGGJBFJGIH, ENCRYPTKEY default
REPORTCOUNT EVERY 30 MINUTES, RATE
DISCARDFILE ./dirrpt/extya.dsc, APPEND, MEGABYTES 1024
DISCARDROLLOVER AT 3:00
WARNLONGTRANS 2h, CHECKINTERVAL 3m
EXTTRAIL ./dirdat/ya
DYNAMICRESOLUTION
DBOPTIONS ALLOWUNUSEDCOLUMN
FETCHOPTIONS NOUSESNAPSHOT
FETCHOPTIONS FETCHPKUPDATECOLS
–CACHEMGR CACHESIZE 8000MB, CACHEDIRECTORY /goldengate/temp, CACHEDIRECTORY /goldengate/temp2
TRANLOGOPTIONS CONVERTUCS2CLOBS
–tranlogoptions asmuser sys@asm, asmpassword AACAAAAAAAAAAGAIF, ENCRYPTKEY default
TRANLOGOPTIONS altarchivelogdest primary instance sgpmdb1 /sgpmdb/arch altarchivelogdest instance sgpmdb2 /sgpmdb/arch
THREADOPTIONS MAXCOMMITPROPAGATIONDELAY 60000 IOLATENCY 60000
—Schema 名稱涉及敏感字符,在此統一使用 Schema 來代替
—table 名稱涉及敏感字符,在此統一使用 table 來代替
mapexclude Schema1.table1;
mapexclude Schema1.table2;
mapexclude Schema2.table1;
mapexclude Schema2.table1;
TABLE Schema1.*;
TABLE Schema2.*;
TABLE Schema3.*;
TABLE Schema4.*;
TABLE Schema5.*;
sequence Schema1.*;
sequence Schema2.*;
sequence Schema3.*;
sequence Schema4.*;
sequence Schema5.*;
SETENV (NLS_LANG= AMERICAN_AMERICA.UTF8)
設置字符集環境變量為 UTF8
如果系統中存在多個數據庫有時候會用參數 SETENV 設置 ORACLE_HOME、ORACLE_SID 等,例如:
SETENV (ORACLE_HOME =“/home/oracle/product/10.2.0/db)
SETENV (ORACLE_SID =“PROD”)
REPORTCOUNT EVERY 30 MINUTES, RATE
每隔 30 分鐘報告一次從程序開始到現在的抽取進程或者復制進程的事物記錄數,并匯報進程的統計信息
DISCARDFILE ./dirrpt/extya.dsc, APPEND, MEGABYTES 1024
將執行失敗的記錄保存在 discard file 中,該文件位于./dirrpt/extya.dsc, 大小為 1024MB。文件中已經包含記錄的話,再后面繼續追加,不刪除之前的記錄。
DISCARDROLLOVER AT 3:00
為了防止 discard file 被寫滿,每天 3:00 做一次文件過期設定
WARNLONGTRANS 2h, CHECKINTERVAL 3m
每隔 3 分鐘檢查一下大事務,超過 2 小時還沒結束的進行報告
EXTTRAIL ./dirdat/ya
隊列文件路徑
DYNAMICRESOLUTION
有時候開啟 OGG 進程的時候較慢,可能是因為需要同步的表太多,OGG 在開啟進程之前會將需要同步的表建立一個記錄并且存入到磁盤中,這樣就需要耗費大量的時間。使用該參數來解決此問題。
DBOPTIONS ALLOWUNUSEDCOLUMN
當抽取進程遇到一個沒有使用的字段時只生成一個警告,進程會繼續執行而不會被異常終止(abend)
FETCHOPTIONS NOUSESNAPSHOT
不會從閃回日志中獲取數據
FETCHOPTIONS FETCHPKUPDATECOLS
當使用了 HANDLECOLLISIONS 時,請使用該參數。
復制進程出現丟失 update 記錄(missing update)并且更新的是主鍵,update 將轉換成 insert。由于插入的記錄可能不是完整的行,若要保證完整需要加入此參數
–CACHEMGR CACHESIZE 8000MB, CACHEDIRECTORY /goldengate/temp, CACHEDIRECTORY /goldengate/temp2
在 /goldengate/temp,/goldengate/temp2 目錄設置虛擬內存
TRANLOGOPTIONS CONVERTUCS2CLOBS
指定在解析數據庫日志時所需要的特殊參數
本參數只用在 extract 端 UTF 字符類型,并且 11.1.1 前處理 CLOB 才需要。
TRANLOGOPTIONS altarchivelogdest primary instance rac1 /arch altarchivelogdest instance rac2 /arch
指定 RAC 環境下每個節點的歸檔日志地址
THREADOPTIONS MAXCOMMITPROPAGATIONDELAY 60000 IOLATENCY 60000
RAC 集群中的所有節點必須同步系統時鐘。GoldenGate 通過比較本地系統的時間和事務提交的時間點來做出關鍵決策。可以通過 NTP 來不同系統時間。所有節點上的 COMPATIBLE 參數設置也必須相同。
這個參數在 Oracle11.2 版本后就不在使用了。
投遞進程配置
GGSCI 6 view params dpeya
EXTRACT dpeya
RMTHOST 10.10.10.1, MGRPORT 7839, COMPRESS
PASSTHRU
NUMFILES 5000
RMTTRAIL ./dirdat/yb
DYNAMICRESOLUTION
—要復制的表清單
TABLE Schema1.*;
TABLE Schema2.*;
TABLE Schema3.*;
TABLE Schema4.*;
TABLE Schema5.*;
RMTHOST 10.10.10.1, MGRPORT 7839, COMPRESS
災備端主機 IP,管理進程端口號,投遞前壓縮隊列文件
NUMFILES 5000
最多處理 5000 張表
RMTTRAIL ./dirdat/yb
災備端保存隊列文件的目錄
PASSTHRU
采用 pass-through 模式處理表
DYNAMICRESOLUTION
動態解析表名
到此,關于“Oracle GoldenGate 配置參數生產端分析”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注丸趣 TV 網站,丸趣 TV 小編會繼續努力為大家帶來更多實用的文章!