Goldengate常用命令

Michael_DD發表於2014-10-31
Goldengate常用命令

1.Goldengate的起停
啟動goldengate
  a> 啟動goldengate時最好先從target節點開始,然後是source節點.否則data pump程式可能會由於沒有收到target端的響應而異常退出。
  b> manager程式是其他程式的管理程式,需要先啟動。如果manager配置引數中設定了AUTOSTART引數,則可由manager程式自動啟動其他程式。
  例如:
    log in target server:
    cd
    ggsci
    GGSCI> start mgr
    GGSCI> start
    
    log in source server:
    cd
    ggsci
    GGSCI> start mgr
    GGSCI> start
    GGSCI> start

 關閉goldengate
   a> 關閉goldengate時最好先從source節點開始,然後是target節點.否則data pump程式可能會由於沒有收到target端的響應而異常退出。 
   b> manager程式通常最後關閉,並且manager程式沒有自動關閉其他程式的選項.
   例如:
    log in source server:
    cd
    ggsci
    GGSCI> stop
    GGSCI> stop
    GGSCI> stop manager
        
    log in target server:
    cd
    ggsci
    GGSCI> stop
    GGSCI> stop manager

2.監控goldengate複製延遲
  goldengate分為多個元件(extract,lag,replicat),所以在說延遲的時候也應該具體到是說哪個元件.作為一個複製解決方案來說,我們通常關心複製延遲,也就是訊息在source資料庫的生成,到被apply到target資料庫的這段時間.
  a> GGSCI的lag命令可以查詢複製延遲, 如: 
    GGSCI> lag
  b> 實際應用中,我們通常採用heartbeat表的方式來監控複製延遲,其優點是不僅可以監控適時複製延遲,還可以監控歷史延遲情況.
  該機制的缺點是當goldengate本身發生異常停止了,heartbeat資料也不能更新,則表中的延遲資料不能反映真實的延遲情況. 規避該問題的方式是用當前系統時間減去heartbeat表中的源訊息生成時間,則可以更準確的反映此時的真實延遲.
  但若heartbeat job出現異常停止更新heartbeat表,則heartbeat表中的源訊息生成時間也不再及時,計算得來的延遲資料也不準確,所以採用heartbeat監控延遲還要注意對heartbeat表本身的監控.
  
3.監控goldengate複製錯誤
  預設情況下,當goldengate遇到複製錯誤時,goldengate是會異常終止的,處於abended狀態.但在實際使用中,通常會修改這種預設設定,以讓goldengate在遇到複製錯誤後能繼續工作,避免造成過大的複製延遲.
  這種情況下一般會將錯誤資訊寫到discard檔案中.要監控discard檔案中有多少錯誤,可使用以下命令:
  GGSCI> STATS latest,totalsonly *.*
  *** Latest statistics since 2013-08-14 07:17:33 ***
        Total inserts                               18840062.00
        Total updates                               26221878.00
        Total deletes                                6471532.00
        Total discards                                     0.00
        Total operations                            51533472.00
  這裡的Total discards統計值就是出錯的訊息數.錯誤的詳細資訊記錄在discard檔案中,當然,也可能存在於某個表中,取決於你的goldengate配置中對錯誤資訊的處理機制.
  當我們對錯誤資訊作了處理後,比如手工fix了這些問題,我們就不希望上述檢查命令再重複報告這些錯誤記錄,這時可以執行以下命令來重置goldengate對錯誤資訊的統計:
  GGSCI> STATS latest,reset,totalsonly *.*

4.監控goldengate訊息處理量
  a> 監控goldengate自啟動以來總的訊息處理量,可用以下命令:
  GGSCI> STATS ,totalsonly *.*
  這裡查的是replicat程式,同樣,也可以查詢extract和pump程式
  b> 按表來統計訊息處理量,使用以下命令:
  GGSCI> STATS
  或者制定某個表作統計:
  GGSCI> STATS ,table .
  c> 實際使用中,我們通常關心一定時間單位內的處理能力,比如每秒處理多少訊息。這時我們可以藉助heartbeat表的統計資訊來監控,heartbeat表中的RDMLDELTASTATS列記錄了總的DML數,除以時間就可以得到goldengate處理能力統計資料。
  d> 除了以上方法之外,還可以設定REPORTCOUNT引數來讓goldengate每隔一定時間將處理的訊息統計寫入goldengate report檔案中,比如:
  ReportCount Every 30 Minutes, Rate

5.goldengate的事務處理命令
  對於常用的複製解決方案,無論是高階複製,stream還是goldengate,大事務或者長事務都是影響複製效能的重要因素之一。goldengate中有一些事務操作命令,可以幫助我們更好的監控或者人工干預這些大/長事務。
  a> 檢視extract程式當前開啟的事務:
  GGSCI> send ,showtrans
  b> 當我們意識到某個事務可能存在問題,我們可能希望看看該事務中的具體資訊,可採用以下命令:
  GGSCI> send extract ,showtrans file detail
  上述命令會將事務的詳細資訊寫到檔案中。
  c> 當我們看到某個事務執行了很長時間,同時認為該事務可以提交或直接忽略時,可使用以下命令:
  GGSCI> send extract ,skiptrans    --跳過某個事務
  GGSCI> send extract ,forcetrans   --強制提交某個事務


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29500582/viewspace-1315883/,如需轉載,請註明出處,否則將追究法律責任。

Goldengate常用命令
請登入後發表評論 登入
全部評論

相關文章