数据迁移后的迁移结果比对方法
2015-11-29 19:32
465 查看
数据迁移之后,总是需要进行源库和目标库的核对,来判断本次数据迁移是否成功。以下采用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 '%$$%';
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是迁移不到目标库的,得需要手动创建。
一、核对迁移对象
找出迁移对象差异,如果查出结果,说明迁移过程中漏了对象,查询结果即为漏的对象。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是迁移不到目标库的,得需要手动创建。
相关文章推荐
- 基于struts2的文件上传
- Linux进程的创建
- 支持向量机
- 20135231 —— 第十一周任务总结报告
- spring MVC 学习(四)---拦截器,视图解析器
- java web中几个概念的区别
- C++学习笔记31——类的基础概念
- Swift基础之对话框UIAlertController
- 蓝桥杯OJ刷题日记——02-基础练习 01字串
- 线程范围内共享变量的概念与作用
- ubuntu 修改主机名
- CodeForces 581F Zublicanes and Mumocrates 树形DP
- OMAP3430 sdp Linux camera driver 分析
- ASP.net四则运算《《《策略模式
- Nodejs学习笔记(一)——初识Nodejs
- iOS AutoLayout自动布局中级开发教程(4)-label等文字自动适应大小,宽度
- Unity3D项目实战笔记(10):Unity3D编译IPA的PostEvents–节约时间利器
- 网页性能优化 要点
- SSAS部署数据立方时,无法打开登录所请求的数据库
- 克鲁斯卡尔算法