首页 > Linux操作系统 > Linux操作系统 > 不同版本的exp、imp
不同数据库之间使用不同版本的exp、imp传输数据的测试
缘由:用9.2.0.1的exp去导出8.1.7.0数据库,得到ora-0942错误,
参考了网上的多种方法后都未能解决,例如运行catexp.sql、cattpatch.sql ,
于是细看了一下oracle帮助中的exp、imp,做了以下测试(8i和9i):
源数据库 目标数据库 exp版本 exp成功? imp版本 imp成功?
8.1.7.0 9.2.0.1 8.1.7.0 成功 8.1.7.0 成功
8.1.7.0 9.2.0.1 8.1.7.0 成功 9.2.0.1 成功
8.1.7.0 9.2.0.1 9.2.0.1 失败(ORA-00942)
9.2.0.1 8.1.7.0 8.1.7.0 成功 8.1.7.0 成功
9.2.0.1 8.1.7.0 8.1.7.0 成功 9.2.0.1 失败(ORA-00942、IMP-00023)
9.2.0.1 8.1.7.0 9.2.0.1 成功 8.1.7.0 失败(IMP-00010)
9.2.0.1 8.1.7.0 9.2.0.1 成功 9.2.0.1 失败(ORA-00942、IMP-00023)
8.1.7.0 8.1.7.0 8.1.7.0 成功 8.1.7.0 成功
8.1.7.0 8.1.7.0 8.1.7.0 成功 9.2.0.1 失败(ORA-00942、IMP-00023)
8.1.7.0 8.1.7.0 9.2.0.1 失败(ORA-00942)
9.2.0.1 9.2.0.1 8.1.7.0 成功 8.1.7.0 成功
9.2.0.1 9.2.0.1 8.1.7.0 成功 9.2.0.1 成功
9.2.0.1 9.2.0.1 9.2.0.1 成功 8.1.7.0 失败(IMP-00010)
9.2.0.1 9.2.0.1 9.2.0.1 成功 9.2.0.1 成功
总结,如果版本不一致的话,在数据库之间exp、imp数据的应该遵循的规则:
1、 imp工具的版本应该和目标数据库的版本一致;
2、 exp工具的版本应该与源数据库和目标数据库中版本最低的一个相一致;
另可参见《Oracle9i Database Utilities》
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/14613712/viewspace-616608/ ,如需转载,请注明出处,否则将追究法律责任。