天天看点

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;