GoldenGate Logdump分析工具

來源:互聯網
上載者:User

Logdump是一個GoldenGate內建的trail檔案分析工具,而且能加深對GoldenGate工作原理的理解,非常值得花時間來研究它。

Logdump組件預設在安裝目錄,是個可執行檔,6所示。

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/21453124R-0.jpg" title="1.jpg" />

圖6

直接輸入logdump按斷行符號鍵即可進入logdump介面,7所示。

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/21453134a-1.jpg" title="2.jpg" />

圖7



1、認識logdump分析工具及常用命令

logdump的命令不是很多,經常用的就那麼幾條,進入logdump命令列之後,直接可以輸入help即可看到用的每一條命令,8和圖9所示。

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/2145315441-2.jpg" title="3.jpg" />

圖8

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/21453114V-3.jpg" title="4.jpg" />


圖9


其中常用的命令如下。

Usertoken  用來顯示trail檔案的一些標記資訊。

Ggstoken  顯示GoldenGate的一些標記資訊。

Headertoken  顯示頭部的標記資訊。

ghdr on  用來開啟記錄的頭部資訊。

pos first|last| for| rev  其中pos for|rev 比較重要,用於指定在trail檔案中讀的方向向上|向下)。

count detail  會顯示當前trail檔案總的記錄數量,10所示。

其他一些命令查看文檔很容易就能明白。

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/2145312945-4.jpg" title="5.jpg" />

圖10


2、理解trail檔案格式與常見分析思路

理解trail檔案的格式對理解GoldenGate的工作原理非常重要,對troubleshooting也非常的有協助,11所示。

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/2145312R2-5.jpg" title="6.jpg" />

圖11


其中,一個trail檔案最先開始是檔案的頭部資訊,然後是記錄的頭部資訊,接著為記錄的詳細資料。GoldenGate是以事務為單位處理記錄的,所以trail檔案記錄的時間均為commit的時間,12所示。

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/2145313260-6.jpg" title="7.jpg" />

圖12


Trial檔案中的處在同一事物中的record,由I/O time和AuditRBA值唯一確定,13所示。

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/214531M42-7.jpg" title="8.jpg" />

圖13


TransInd記錄當前的record處於當前事務的哪個部分,14所示。

650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/2145316401-8.jpg" title="9.jpg" />

圖14


GoldenGate的工作原理可以理解為源端抽取進程從redo日誌中按事物抽取相應的DML操作資訊與資料,然後按時間順序寫到本地的trail檔案,然後源端的投遞進程則與容災端MGR進程、Extract進程互動,通過讀trail檔案資訊,把資料通過TCP/IP協議投遞到容災端。接著容災端的Replicat進程再通過讀投遞過來的trail檔案,轉換為SQL語句往資料庫裡更新資料,這樣就完整地實現了資料複製。

瞭解到這一層後,如果GoldenGate鏈路出現問題,或者trail檔案有損壞,則可以直接通過logdump分析到對應的檢查點,重新抽取或者投遞或者複製,從而可以修複已經損壞的鏈路。


3、Logdump使用指引

在GGSCI中使用如下命令查看當前處理的隊列檔案和RBA號,例如:

樣本47:

GGSCI br-jl-accs-db1) 3> info REPYXA

REPLICAT   REPYXA    Last Started 2011-01-08 19:48   Status RUNNING

Checkpoint Lag       00:00:00 updated 136:41:42 ago)

Log Read Checkpoint  File ./dirdat/p1000556 First Record  RBA 59193235


在GoldenGate安裝目錄執行logdump命令,開啟要查看的隊列檔案:

樣本48:

Logdump 1 >open ./dirdat/p1000556

Current LogTrail is ./dirdat/p1000556

Logdump 2 >ghdr on

Logdump 3 >detail on

Logdump 4 >detail data

Logdump 5 >usertoken on

Logdump 6 >pos 59193235 上面INFO命令看到的RBA號碼

Logdump 7 >n

繼續輸入n顯示當前處理的表及相關操作。


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.