如何将oracle 数据从高版本导入到低版本?
1、我本地安装的Oracle11g,服务器上安装的数据库是Oracle10g,最开始直接用imp命令导入时会报错,如下图

2、经过分析,出现上述问题的原因是数据库版本的问题,Oracle不支持高版本导入到低版本,解决方法如下两种
1、用notepad++等文本编辑工具打开dmp文件,可以看到头部信息
--TEXPORT:V11.02.00,即为源数据库的版本号,将其修改为目的数据库的版本号,如服务器上的为10.20.10。或者用DMP版本修改工具(网上搜一下),修改dmp文件的版本号。修改完了之后再用imp命令可导入。(此方法适用于表少且表结构简单的情形,较复杂情况如含有二进制表的数据和表结构导入的时候会报错,这些表和数据就丢失了)

1、首先创建一个用于存放对象的文件,即导入\导出时的文件存放目录,以便能够直接找到导出的文件。默认也有directory(directory=DATA_PUMP_DIR,不用创建),一般在 安装目录\admin\orcl\dpdump下。
举例:我创建一个在E盘根目录下的oracle_backup文件夹下的目录。

2、创建完目录后,打开cmd,输入“sqlplus system/orcl@orcl”(根据自己的数据库情况输入) 。接着,创建DIRECTORY,创建语句如下:

3、授权(授予要导入数据的用户对该目录(路径)进行读和写的权限),还是在连接数据库的状态下输入:

4、重进cmd,执行导出

5、在服务器数据库中用同样的方法建立directory,把上一步中导出的dmp文件放在该目录,执行导入

6、注意:此种方法可保证导出数据库的完整性,也可以将oracle11g中的空表导出!
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:31
阅读量:60
阅读量:32
阅读量:112
阅读量:81