Oracle 导出的表不全,以及数据库版本不同导入报错

时间:2023-03-09 21:29:44
Oracle 导出的表不全,以及数据库版本不同导入报错

公司有两个环境下的数据库,版本不同,一个是11g r2,另一个是10g r2

首先在11g r2下用exp导出数据库备份文件,发现部分表缺失。

原来这部分表是空的,11G中新特性,当表无数据时,不分配segment,以节省空间。而使用exp命令时,无Segment的表不会被导出。

解决方案:

http://wenku.baidu.com/view/7beb56f57c1cfad6195fa702.html

好不容易全部导出来后,在10g r2环境下使用imp命令导入时报错:

IMP-00010: not a valid export file, header failed verification

解决办法:

头部验证失败是由于版本号不同所致,经试验可以通过如下方法进行修改:用notepad++工具打开dmp文件,可以看到头部信息
--TEXPORT:V11.01.00,即为源数据库的版本号,将其修改为目的数据库的版本号,如本机的版本号为10.02.01,再次进行导入操作尝试。
导入不成功也有可能是因为数据库用户不对造成的。