簡單記錄一下最近做的一個測試環境遷移,主要是從12.2.0.1 跨兩個小版本遷移到19c(12.2.0.3),操作系統均為centos7,下面一起來看看吧~
一、導出測試環境數據
1、 創建路徑(導入導出都要建立)
2、授權讀寫
GRANT READ,WRITE ON DIRECTORY DUMPDIR TO srm;
3、 導出數據
二、導入數據
使用oracle用戶将dmp的壓縮文件複制至數據庫服務器上的/u01/software/dumpdir 路徑下解壓。
1.2.1 創建路徑(導入導出都要建立)
alter session set container=SRMpdb;
CREATE OR REPLACE DIRECTORY DUMPDIR AS '/oracle/impdp';
select * from DBA_directories;
1.2.2 授權讀寫
GRANT READ,WRITE ON DIRECTORY DUMPDIR TO srmpro;
1.2.3 導入數據
nohup impdp srmpro/xxxx@SRMPDB directory= DUMPDIR dumpfile=expsrm0227_%U.dmp logfile= hwb0227_imp.log TABLE_EXISTS_ACTION = REPLACE remap_schema=srm:srmpro remap_tablespace=SRM_DATA:SRM_DATA parallel=3 &
附錄
1、導出數據
1)按用戶導
expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;
2)并行進程parallel
expdp scott/tiger@orcl directory=dpdata1 dumpfile=scott3.dmp parallel=40 job_name=scott3
3)按表名導
expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdp.dmp DIRECTORY=dpdata1;
4)按查詢條件導
expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmp Tables=emp query='WHERE deptno=20';
5)按表空間導
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=temp,example;
6)導整個數據庫
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmp FULL=y;
2、還原數據
1)導到指定用戶下
impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=scott;
2)改變表的owner
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp TABLES=scott.dept REMAP_SCHEMA=scott:system;
3)導入表空間
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=example;
4)導入數據庫
impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y;
5)追加數據
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION
其實邏輯都差不多,隻是12c大家需要注意下pdb概念而已,覺得有用的朋友多幫忙轉發哦!後面會分享更多devops和DBA方面的内容,感興趣的朋友可以關注下~
,