天天看點

oracle 12c 導入10g,oracle 11g的資料導入oracle 10g

需求

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方案下的所有對象導到B機pctz方案下。

解決方案

(一)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=pctzversion=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.dmp從A機的/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;