利用MV+EXP+TRIGGER動態遷移資料庫碰到的一些問題

tolywang發表於2006-06-11

做法是:

由於一些table非常大,而且還有LOB, 停機匯出可能需要15個小時,所以選擇使用MV和EXP同時動作,動態匯出大表的部分資料,同時由於MV是在目標庫上另外建立的一個獨立表,專門用於記錄源資料庫上的一些大表的變化部分, 僅僅紀錄變化的DATA, 而且由於源資料庫中的MV LOG Refresh之後,DELETE的部分不會紀錄在目標資料庫新建MV中,所以還需要在源資料庫中建立各個大表對應的 DEL_LOG 表,用Trigger 來記錄刪除的紀錄,儲存在各個表對應的DEL_LOG表中 。


動作的時候碰到的一些問題。

1. sequences 問題,因為exp的時候最先匯出的是SEQUENCES, 所以如果EXP的時候, 源資料庫還在操作,那麼IMP到目標資料庫的SEQUENCES可能就會和目前的SEQUENCES 的Last Value 不同, 因為MV僅僅紀錄變化的DATA, 而不會紀錄變化的SEQUENCE 或Procedure 等 。 需要參考源資料庫的SEQUENCE重新建立 。

2. IMP 的時候注意一些表的Trigger, 可能存在INSERT激發的Trigger . 可能會導致資料重複或不一致 。

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

相關文章