在做一套库的迁移准备,测试的时候有些异常,记录一下处理办法。
如果有处理不对的地方,请不吝赐教。
1.dba_objects表对比发现LOB对象数量差距大
数据泵迁移完对比对象数量,发现LOB对象差距很大。
目标库执行查询:
--查询目标库数据
select object_type, count(*) as num
from dba_objects
where owner = 'LC'
group by object_type
--查询源库数据,通过dblink
select object_type, count(*) as num
from dba_objects@qy
where owner = 'LC'
group by object_type
查询结果,相差1070个LOB对象:


由于只是迁移测试,并没有停业务,所以首先想到的是不是在迁移完成到对比数据之间的时间之间,创建了大量的LOB对象呢?
--目标库执行查询
select object_type, object_name, status, created
from dba_objects@qy
where object_type = 'LOB'
order by CREATED desc;
查询结果,没有新创建LOB:

对象的状态(VALID/INVALID)并不会影响导入,这点不需要验证。
到这里就没思路了,有大佬提示查询mos,在1595391.1中找到答案:
含有lob字段的表drop掉之后,lob字段实际并没有purged,而是放在回收站中。这种情况下,查询dba_object(包含user_object和obj)仍然能看到删掉的lob对象。准确的对比方式应该是查询user_lobs表。
我们分别查询user_lobs表跟user_recyclebin表:
select count(*) from user_lobs;
select count(*) from user_lobs@qy;
user_lobs的结果:

select count(*) from user_recyclebin@qy where type='LOB';
源库user_recyclebin的结果:

最后:
- 源库回收站中1070+user_lobs中360=1430,这样就跟dba_objects表的数量对起来了,所以这部分忽略即可
- obj表是user_objects视图的同义词
--dba_objects表中查看obj的类型
select * from dba_objects where object_name='OBJ';

最低0.47元/天 解锁文章
2015

被折叠的 条评论
为什么被折叠?



