oracle导出导入备份表数据

       今天遇到了一个很常见的需求,备份数据库数据。

       轻车熟路,用PL/SQL Developer的Tools--Export Tables,选好oracle导出程序的路径和文件导出的路径,点下右下角Export即可。

       不过试了好几次,下面的提示栏都已经显示完成了,不过桌面上还是没有dmp文件。

       我首先是怀疑是PL/SQL Developer的问题,因为自己这个版本以前看不到job里的东西。所以我试着直接登录数据库使用exp table_name/pwd file=f:\alltable.dmp导出,然后看到了如下错误。


根据网上的资料和总结,分析可能是本地使用的exp导出工具的版本与数据库服务器端exp版本不一致导致。我本地安装的Oracle 版本是Release 11.2.0.1.0,而服务器端安装的Oracle 是Release 10.2.0.4.0。

       由于Oracle的imp/exp组件的操作原则为向下兼容,具体规则为:

       规则1:低版本的exp/imp可以连接到高版本(或同版本)的数据库服务器,但高版本的exp/imp不能连接到低版本的数据库服务器;
       规则2:高版本exp出的dmp文件,低版本无法imp(无法识别dmp文件);低版本exp出的dmp文件,高版本可以imp(向下兼容);
       规则3:从Oracle 低版本Export的数据可以Import到Oracle高版本中,但限于Oracle的相邻版本,如从Oracle 10 到 Oracle 11.对于两个不相邻版本间进行转换,如从Oracle 9 到 Oracle 11,则应先将数据输入到中间版本-Oracle 10,再从中间数据库转入更高版本Oracle 11.        所以,以后装本地数据库最好能与服务器上的版本保持一致,避免出现一些不必要的麻烦。  

猜你喜欢

转载自hdu0704.iteye.com/blog/1931211