一、Oracle12c導出數據
1.連接數據庫
sqlplus / as sysdba

2.查看pdbs
show pdbs;

3.切換pdb
alter session set container=spdb1pdb;

4.指定dump存放路徑
create directory dump as '/tmp/dumpdata';
5.查詢表空間及大小
select tablespace_name,sum(bytes)/1048576 from cdb_data_files group by tablespace_name;

6.導出數據
expdp user/passwd@localhost:1521/spdb1pdb directory=dump dumpfile=dump190809.dump logfile=dump190809.log version=11.2.0.4.0 cluster=n;
注:加參數schemas={} 報錯
以下報錯解決方式:

dump路徑/tmp/dumpdata,在tmp目錄新建dumpdata文件夾
等待導出完成

二、Oracle11g導入
1.查看導出文件及日志

2.將文件拷貝至11g服務器
scp dump190809.dump root@192.168.0.64:/tmp

因網絡原因兩台服務器不通,通過其他途徑拷貝至對應服務器即可
3.連接11g服務器
sqlplus / as sysdba

4.創建同名表空間及臨時表空間
create tablespace CLOUDDATA datafile '/u01/app/oracle/oradata/orcl/CLOUDDATA.dbf' size 500m REUSE autoextend on next 50M;

create temporary tablespace temp1 tempfile '/u01/app/oracle/oradata/orcl/temp1.dbf' size 100m REUSE autoextend on next 50M;

5.創建用戶並賦權
CREATE USER USER IDENTIFIED BY PASSWD DEFAULT TABLESPACE CLOUDDATA TEMPORARY TABLESPACE temp1;

GRANT CONNECT, RESOURCE, DBA TO USER;

注:刪除用戶及清除SESSION
select sid,serial# from v$session where username='USER';
ALTER SYSTEM KILL SESSION '185,37315';

DROP USER USER CASCADE;

6.指定dump存放路徑
create directory dump as '/tmp/dumpdata';
impdp user/passwd directory=dump dumpfile=dump190809.dump logfile=dump190809.log

等待導入完成,對此處報錯忽略。
