oracle資料庫的泵匯入匯出
1、oracle的泵匯出:
分為兩步:
a、-- 建立匯出(匯入)的檔案路徑的對映,資料庫中執行
create directory XX_dmp as 'E:\XX_dmp';
b、-- 資料庫匯出,CMD視窗執行
expdp 使用者名稱/密碼 directory=XX_dmp dumpfile=匯出DMP名.dmp logfile=XXX.log
2、oracle的泵匯入:
分為六步:
a、--新建表空間
create tablespace lpsdc
logging
datafile 'XXX路徑\XXX.dbf'
size 5120m --空間大小
autoextend on
next 10m--超出原空間大小後增加的大小
extent management local;
b、--建立使用者並指定表空間
create user XXX identified byXXX
default tablespace XXX temporary tablespace temp;
c、--給使用者授予許可權
grant connect,resource,dba,create any view to XXX;
d、-- 建立匯入的檔案路徑的對映,資料庫中執行
create directory hx_dmp as 'E:\XX_dmp';
e、-- 給相關目錄授予許可權,資料庫中執行
Grant read,write on directory XX_dmp to lpsdc;
f、-- 資料庫匯入,CMD視窗執行
-- 如果使用impdp匯入,那麼匯出的備份檔案也應該是相對應的expdp匯出的【如果原資料的檔案對應對個表空間,則對應多個remap_tablespace】
impdp XXX/XXX directory=XX_dmp dumpfile=XXX.dmp remap_schema=原使用者:新使用者 remap_tablespace=原使用者:新使用者 remap_schema=原使用者:新使用者
3、刪除原有使用者
分為三步:
a、檢視現有連結使用者
alter user XXX account lock;--解鎖
Select username,sid,serial# from v$session where username='XXX';--檢視所有會話【使用者名稱】
b、如果結果有資料,則斷開連線
alter system kill session'14,4597';
c、刪除使用者
drop user XXX cascade;
4、刪除原表空間,慎用【*】
drop tablespace XXX including contents and datafiles cascade constraints;
*****在匯入資料庫後,由於型別會不能完全匯入,需要將源資料庫的型別在新庫中重新編譯,開啟SQL,執行型別即可。【以上是基於developer的匯入匯出】