oracle 11g的資料匯入oracle 10g

zhenghaishu發表於2015-07-01

需求

A機:

Oracle版本:11.2.0.1.0

Oracle SID:pcgj

Oracle使用者:pctz

 

B機:

Oracle版本:10.2.0.5.0

Oracle SID:zxin

Oracle使用者:pctz

 

現要求把A機中pctz方案下的所有物件導到Bpctz方案下。

 

解決方案

(一)A機匯出步驟

1)建立匯出路徑

~>sqlplus / as sysdba

SQL> create directory dump_dir as '/home/oracle/dump';

grant read, write on directory dump_dir to system

2)匯出

expdp system/oracle directory=dump_dir dumpfile=exp20150701.dmp logfile=exp20150701.log schemas=pctz version=10.2.0.5.0;

注意:高版本向版本匯入資料時要在引數里加上version=目標庫的低版本號

3)A機中查詢空間和建立表空間的語句

SQL> select * from dba_tablespaces;

SQL> set long 2000
SQL> select dbms_metadata.get_ddl('TABLESPACE','表空間名稱') FROM DUAL;

 

(二)把exp20150701.dmpA機的/home/oracle/dump/目錄下複製到B機的home/oracle/dump/目錄下

 

(三)B機匯入步驟

1)建立匯入路徑

SQL> create directory dump_dir as '/home/oracle/dump';

grant read, write on directory dump_dir to system

2)建立缺失的表空間

3)建立使用者

SQL> create user pctz identified by pctz;

SQL> grant connect, resource to pctz;

4)匯入

impdp system/oracle directory=dump_dir dumpfile=exp20150701.dmp logfile=imp201507012103.log schemas=pctz;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29485627/viewspace-1719583/,如需轉載,請註明出處,否則將追究法律責任。

相關文章