Oracle数据库exp/Imp导出导入方式恢复数据库后,发现源库与目标库表数量不一致?

参与13

5同行回答

hufeng719hufeng719联盟成员系统工程师某钢铁企业
二楼[zhuqibs]完美回答了此问题。 曾遇到过这样一种情况:同样的数据库版本,搭建测试机时,利用正式库 exp 导出备份进行 imp 导入测试机中,查询该用户模式下的表数量发现,正式库与测试库表数量不一致(测试库少)。后来发现 是因为原库中有些新创建的表从没有插入过数据 所以就没...显示全部

二楼[zhuqibs]完美回答了此问题。
曾遇到过这样一种情况:同样的数据库版本,搭建测试机时,利用正式库 exp 导出备份进行 imp 导入测试机中,查询该用户模式下的表数量发现,正式库与测试库表数量不一致(测试库少)。后来发现 是因为原库中有些新创建的表从没有插入过数据 所以就没有分配过空间,这种表在用 exp 命令时不会导出。但如果表曾经插入过数据又删除了,同样是 0 行数据,但是只要插入过数据就会分配过空间,这种表 exp 命令时就会导出。通过命令 select count(1) ,SEGMENT_CREATED from user_tables group b y SEGMENT_CREATED; 就会看出哪些表没有被分配空间。出现这种情况时,只需要在源库对未分配空间的表运行下 alter table _tablename_allocate extent; 操作,然后重新 exp/imp 导出导入即可。

收起
能源采矿 · 2021-03-26
浏览1798
wangqlwangql系统工程师NULL
采集下信息看看两边差了多少,差的表有啥特点; 检查下导入导出的语句、日志有没有遗漏或报错的地方显示全部

采集下信息看看两边差了多少,差的表有啥特点; 检查下导入导出的语句、日志有没有遗漏或报错的地方

收起
IT咨询服务 · 2021-03-25
浏览1754
zhuqibszhuqibs软件开发工程师Adidas
这问题提的太狡猾了,oracle11g中对exp做了变动,空表(没有区块的表)是不导出的,如果数量不一样,很可能缺失的表是空表显示全部

这问题提的太狡猾了,oracle11g中对exp做了变动,空表(没有区块的表)是不导出的,如果数量不一样,很可能缺失的表是空表

收起
互联网服务 · 2021-03-23
浏览1748
yulu4314yulu4314技术支持长春
导出 与导入是否有报错信息!显示全部

导出 与导入是否有报错信息!

收起
系统集成 · 2021-03-20
浏览1750
ostrichostrich系统架构师自由职业者
exp时候导少了显示全部

exp时候导少了

收起
系统集成 · 2021-03-18
浏览1829

提问者

hufeng719
系统工程师某钢铁企业
擅长领域: 数据库存储服务器

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2021-03-18
  • 关注会员:5 人
  • 问题浏览:3491
  • 最近回答:2021-03-26
  • X社区推广