詳解oracle12c資料庫跨小版本遷移步驟

2020-03-08     波波說運維

概述

簡單記錄一下最近做的一個測試環境遷移,主要是從12.2.0.1 跨兩個小版本遷移到19c(12.2.0.3),作業系統均為centos7,下面一起來看看吧~


一、導出測試環境數據

1、 創建路徑(導入導出都要建立)

2、授權讀寫

GRANT READ,WRITE ON DIRECTORY DUMPDIR TO srm;

3、 導出數據

詳解oracle12c資料庫跨小版本遷移步驟



二、導入數據

使用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方面的內容,感興趣的朋友可以關注下~


文章來源: https://twgreatdaily.com/Us47unABjYh_GJGVMS60.html