由于客户要求,要把一个Oracle11g数据库迁移到一个Oracle10g ,由于deferred_segment_creation参数建库之初没有设置为false,并且目前存在空表,所以还是使用expdp和impdp。 1、expdp和rman相像的地方时都是在主机端(目标数据库端)生成dmp文件 所以文件夹和权限等都在主机端设置。 2、由于是从11g迁移到10g,所以expdp增加了一个参数 version 在需要迁移的目标数据库端执行 select * from v$version; 就知道version的值了,不然会报错。 【报错内容 ORA-39001: invalid argument value ORA-39000: bad dump file specification ORA-39142: incompatible version number】 expdp opsteel/opsteel dumpfile=20150923.dmp logfile=exp20150923.log directory=expdp_dir schemas=opsteel version=10.2.0.1.0 3、impdp和 ORA-39125 这个错误出现在10.2.0.4之前的版本,需要加参数 exclude=statistics就可以 10.2.0.4是否不需要加,忘了测试了,明天测试一把,看metalink 10.2.0.4已经修订了这个BUG 【报错内容 ORA-39125: KUPW$WORKER.PUT_DDLS [DBMS_METADATA.CONVERT]调用出错 ORA-06502: LPX-00210: 】 最终的impdp的语法 impdp opsteel/opsteel dumpfile=20150923.dmp logfile=imp20150923.log DIRECTORY=impdp_dir SCHEMAS=opsteel version=10.2.0.1.0 exclude=statistics
|
|