expdp 導出
1.管理員用戶登入sqlplus
sqlplus system/manger@pdb1
2.創建邏輯導出目錄
create directory dpdata as '/home/oracle18c/databak';
dpdata 只是代號,后面執行命令時候用到,而’/home/oracle18c’是我們要導出文件存放的目錄。
3.創建成功后,通過此語句進行查看
select * from dba_directories;
需要注意的是,執行命令並不是真正創建目錄,需要手動在該路徑下創建目錄,否則后續導出會不成功。
4.導出整個數據庫
expdp sx_xxxs/sx_xxx@pdb1 directory=dpdatal dumpfile=sx_xxx20210325.dmp full=y
system/manager@orcl – 用戶名/密碼@服務名 directory=dpdata – 前面創建的目錄 dumpfile=20210323.dmp – 導出文件名 full=y – 導出整個數據庫,此參數不建議使用
5.指定用戶導出的兩種方法
expdp system/manager@orcl directory=dpdata dumpfile=expdpfile.dmp schemas=scott
expdp system/manager@orcl directory=dpdata dumpfile=expdpfile.dmp schemas=scott
impdp 導入
導入的數據庫一定要首先創建好相應的用戶,和導出時用的用戶一致賦予相應權限,並且導入的文件是expdp方式導出的才可以,不然就報
1.導入之前同樣創建邏輯目錄(同expdp)
2.全庫導入
impdp system/manager@orcl directory=dpdata dumpfile=expdpfile.dmp full=y
3.指定用戶導入
impdp system/manager@orcl directory=dpdata dumpfile=expdpfile.dmp schemas=scott
impdp scott/tiger@orcl directory=dpdata dumpfile=expdpfile.dmp
導入不同用戶到不同用戶和不同表空間下
- 原用戶sx_xxx 原表空間 TBS_SXRMS_DATA
- 新用戶sx_xxx 新表空間 SLM
導入命令
impdp sx_slm/sx_slm@pdb1 dumpfile=20210323222.DMP directory=dpdatal remap_schema=sx_rms:sx_slm remap_tablespace=TBS_SXRMS_DATA:SLM
參數解釋: dumpfile --需要導入的dmp文件名 directory --創建的邏輯目錄 remap_schema=原用戶:新用戶 remap_tablespace=原表空間:新表空間-