oracle 高版本导出的dmp文件导入到低版本库
程序员文章站
2022-05-08 12:33:29
...
oracle 高版本导出的oracle 高版本导出的dmp文件导入到低版本库
oracle 高版本导出的dmp文件导入到低版本库
导入到低版本库
版本信息:
生产ORACLE 11G:V11.02.00
测试ORACLE 10G:V10.02.01
最近碰到一个需求,生产线上的数据库要完整的导入到本地测试环境,线上的库是oracle 11g,本地测试库是oracle 10g。
本以为很简单,后来的事实证明我错了。
思路一:
把11g的dmp文件传到10g的测试环境,运用imp命令直接导入。提示错误信息:IMP-00010: 不是有效的导出文件, 头部验证失败
找了一些解决方案,由于我的dmp文件只有300M左右,所以我直接用editplus编辑器打开,把版本号直接改为V10.02.01。
然后再运行imp命令导入,还是提示错误信息。应该是跟dmp文件中的表包含blob字段有关。
觉得这个方案搞不定,就放弃了,换一个思路看看怎么解决。
思路二:
用11g的客户端导11g dmp文件到10g的数据库
在自己电脑上,安装一个11g的客户端,用11g的客户端导入到本地测试环境的10g数据库。
很遗憾,还是在包含blob字段的表的地方出错。提示错误信息:IMP-00093
找了一些解决方案,大多都是imp的时候,指定 indexes=no 或者statistics=none 参数。可惜我试过了,还是报各种错。。。
有点绝望,以上两种方案在导入一般的表都能正常导入,但在包含了blob字段的表就会报错,导致以上两个思路都行不通。
由于时间比较紧,最后还是决定重新部署一个测试环境,安装11g的数据库。
直接导入,一切都很顺利。。。
在这里做个记录,以后有空再研究下,看有没有别的解决方案。
oracle 高版本导出的dmp文件导入到低版本库
导入到低版本库
版本信息:
生产ORACLE 11G:V11.02.00
测试ORACLE 10G:V10.02.01
最近碰到一个需求,生产线上的数据库要完整的导入到本地测试环境,线上的库是oracle 11g,本地测试库是oracle 10g。
本以为很简单,后来的事实证明我错了。
思路一:
把11g的dmp文件传到10g的测试环境,运用imp命令直接导入。提示错误信息:IMP-00010: 不是有效的导出文件, 头部验证失败
找了一些解决方案,由于我的dmp文件只有300M左右,所以我直接用editplus编辑器打开,把版本号直接改为V10.02.01。
然后再运行imp命令导入,还是提示错误信息。应该是跟dmp文件中的表包含blob字段有关。
觉得这个方案搞不定,就放弃了,换一个思路看看怎么解决。
思路二:
用11g的客户端导11g dmp文件到10g的数据库
在自己电脑上,安装一个11g的客户端,用11g的客户端导入到本地测试环境的10g数据库。
很遗憾,还是在包含blob字段的表的地方出错。提示错误信息:IMP-00093
找了一些解决方案,大多都是imp的时候,指定 indexes=no 或者statistics=none 参数。可惜我试过了,还是报各种错。。。
有点绝望,以上两种方案在导入一般的表都能正常导入,但在包含了blob字段的表就会报错,导致以上两个思路都行不通。
由于时间比较紧,最后还是决定重新部署一个测试环境,安装11g的数据库。
直接导入,一切都很顺利。。。
在这里做个记录,以后有空再研究下,看有没有别的解决方案。
上一篇: 最终无知的时候
下一篇: 绝对经典+精辟 王朔原创,葛优口述