GoldenGate 常見錯誤分析
10、OGG-01027長事務)
樣本25:
WARNING OGG-01027 Long Running Transaction: XID 84.242063, Items 0, Extract YX_EXT1, Redo Thread 1, SCN 2372132775890 10219859973074), Redo Seq #5688, Redo RBA 19599771
可以通過下面的命令尋找更詳細的資訊:
樣本26:
GGSCI> send extract xxx, showtrans [thread n] [count n]
其中,thread n是可選的,表示只查看其中一個節點上的未提交交易;count n也是可選的,表示只顯示n條記錄。
例如查看xxx進程中節點1上最長的10個交易,可以通過下列命令:
樣本27:
GGSCI> send extract extsz , showtrans thread 1 count 10
記錄XID,通過DBA尋找具體的長交易執行的內容:
樣本28:
GGSCI> SEND EXTRACT xxx, SKIPTRANS <84.242063> THREAD <2> //跳過交易
GGSCI>SEND EXTRACT xxx, FORCETRANS <84.242063> THREAD <1> //強制認為該交易已經提交
使用這些命令只會讓GoldenGate進程跳過或者認為該交易已經提交,但並不改變資料庫中的交易,它們依舊存在於資料庫中。因此,強烈建議使用資料庫中提交或者復原交易而不是使用GoldenGate處理。
11、隊列檔案儲存天數
在mgr.prm中,添加:
樣本29:
PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 3
修改之後,必須重啟manager即可看到隊列檔案佔用的空間被按照上面指定的規則 釋放。
如果儲存空間不夠,可以將minkeepdays修改為MINKEEPHOURS。
如果源端儲存空間不足,最好修改最少保留的時間。
12、複製進程拆分及指定隊列檔案及RBA
拆分前通過INFO XXX擷取隊列檔案資訊及RBA號,返回範例如下:
樣本30:
GGSCI> INFO REPYXA
REPLICAT REPYXA Last Started 2011-01-08 19:48 Status RUNNING
Checkpoint Lag 00:00:00 updated 00:01:42 ago)
Log Read Checkpoint File ./dirdat/p1000556 First Record RBA 59193235
在將Replicat進程拆分後,指定從拆分前的隊列檔案及RBA號碼開始複製:
樣本31:
ALTER REPLICAT xxx EXTSEQNO nnn, EXTRBA mmm
以上面的為例:
樣本32:
ALTER REPLICAT REPYXA 556, EXTRBA 59193235
13、BOUNDED RECOVERY
錯誤資訊:
樣本33:
BOUNDED RECOVERY: reset to initial or altered checkpoint.
資料庫問題,不能讀取第2個節點的archivelog檔案。
14、排除不複製的表
在參數檔案中增加:
樣本34:
TABLEEXCLUDE schema.table_name
15、從指定時間重新抓取
重新抓取資料前提:歸檔檔案沒有刪除。
樣本35:
ALTER EXTRACT xxx, TRANLOG, BEGIN 2010-12-31 08:00
時間格式:yyyy-mm-dd [hh:mi:[ss[.cccccc]]]
如果是建立:
樣本36:
ADD EXTRACT xxx, TRANLOG, BEGIN 2010-12-31 08:00
16、進程無法停止
通常情況是在處理大交易,尤其在有超過2小時以上的大交易,建議等待進程處理完畢。
處理方法:如果必須停止進程,可以強制殺死進程。
樣本37:
send xxx forcestop
17、CLOB處理
如果包含CLOB欄位,在Extract參數檔案中必須添加:
樣本38:
TRANLOGOPTIONS CONVERTUCS2CLOBS
18、DB2不能使用checkpoint table
處理方法:在增加Replicat進程時使用nodbcheckpoint參數。
樣本39:
add replicat xxx, exttrail /GoldenGate/dirdat/rb, nodbcheckpoint
oracle視頻教程請關注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html