資料遷移之後,總是需要進行源庫和目標庫的核對,來判斷本次資料遷移是否成功。以下採用dblink方法進行核對,是在工作中總結的,通過物件和資料量來進行判定資料遷移是否成功,如果以下核對內容完全一致,基本上可以判定遷移成功。dblink中的使用者需要有dba許可權,在目標庫中建立dblink。
找出遷移物件差異,如果查出結果,說明遷移過程中漏了物件,查詢結果即為漏的物件。
select *
from dba_objects@dblink_101701622 t
where t.owner = 'u_sjzx_web'
and t.object_name not in (select object_name from user_objects t)
and t.object_name not like '%$$%';
1.重新分析表的資料量,為了下一步能夠獲得準確的資料量,源庫目標庫都需要執行查詢結果。
select 'analyze table ' || table_name || ' compute statistics;' from user_tables;
2.找出資料量差異表物件
select yb_bm 源表表名,
yb_num 源表資料量,
mb_bm 目標表名,
mb_num 目標資料量,
bdjg 比對結果
from (select t.table_name yb_bm,
t.num_rows yb_num,
tt.table_name mb_bm,
tt.num_rows mb_num,
case
when t.num_rows = tt.num_rows or t.num_rows is null then
'相同'
else
'不相同'
end bdjg
from dba_tables@dblink_101701622 t, user_tables tt
where t.owner = 'u_sjzx_web'
and t.table_name = tt.table_name(+)) a
order by bdjg;
補充說明:public型別的dblink是遷移不到目標庫的,得需要手動建立。
mysql資料遷移 Mysql資料遷移方法
mysql遷移通常使用的有三種方法 1 資料庫直接匯出,拷貝檔案到新伺服器,在新伺服器上匯入。2 使用第三方遷移工具。3 資料檔案和庫表結構檔案直接拷貝到新伺服器,掛載到同樣配置的mysql服務下。第一種方案的優點 會重建資料檔案,減少資料檔案的占用空間,相容性最好,匯出匯入很少發生問題,需求靈活。...
Mysql平滑遷移(重構後的資料平滑遷移)
一般思路 只是一般思路 1 線下備份表結構 2 線上備份表資料 3 建立臨時表 4 建立檢視 簡化步驟如下 只適合參考 1 只拷貝表結構,不拷貝資料 select into b from a where 1 1 2 表資料遷移表b已經存在 insert into b d,e,f select a,b...
資料平滑遷移方法
一 問題的提出 網際網路有很多 資料量較大,併發量較大,業務複雜度較高 的業務場景,其典型系統分層架構如下 1 上游是業務層biz,實現個性化的業務邏輯 2 中游是服務層service,封裝資料訪問 3 下游是資料層db,儲存固化的業務資料 服務化分層架構的好處是,服務層遮蔽下游資料層的複雜性,例如...