oracle數據泵導入導出部分用戶

問題描述:須要將140服務器中的tbomnew實例下的部分用戶導入到118服務器下的tbompx實例中,本次導入導出的兩個數據庫均爲19Csql

部分用戶名:CORE,MSTDATA,BOMMGMT,CFGMGMT,CHGMGMT,CUST,integrationshell

 

1.導入指定140服務器的實例名tbomnew,先查詢一下這個服務器上的實例名,能夠用監聽查詢,由於這個庫中有很過實例名,因此要先導入所須要的實例名。數據庫

 

 

 

[oracle@t-bomdb dpdump]$ export ORACLE_SID=tbomnew服務器

[oracle@t-bomdb dpdump]$oracle

[oracle@t-bomdb dpdump]$工具

[oracle@t-bomdb dpdump]$ echo $ORACLE_SIDspa

tbomnew3d

 

 

 

2.首先查詢服務器有沒有建立用於備份的dumpfile之類的日誌

SQL> select * from dba_directories;    查詢數據字典查看一下dumpfile的名稱,屬於sys用戶,名字,以及路徑,若是沒有能夠建立一個目錄blog

 

 

 

3.開始導出須要導出的部分用戶,加上logfile能夠看到運行日誌,清晰的能夠看到導出的過程

[oracle@t-bomdb ~]$ expdp "'/ as sysdba'" directory=DATA_PUMP_DIR dumpfile=20200104USERS.DMP schemas=CORE,MSTDATA,BOMMGMT,CFGMGMT,CHGMGMT,CUST,integration logfile=20200104USERS.log

 

 

 

 

 

 

4.將導出的dmp文件傳輸到118目標服務器的文件夾下

[oracle@t-bomdb ~]$ scp /oracle/admin/tbomnew/dpdump/20200114USERS.DMP root@10.66.225.118:/oracle/admin/tbompx/dpdump/

 

 

 

5.scp傳輸過來的文件進行imdpd導入,下邊的紅色部分不用在乎

 

 

 

 

 

 

 

6.可是值得注意的這裏的文件權限是root,須要手動受權dmp文件屬主爲 oracle:oinstall

[root@tldbompx03 dpdump]# chown -R oracle:oinstall 20200114USERS.DMP

[root@tldbompx03 dpdump]#

[root@tldbompx03 dpdump]#

[root@tldbompx03 dpdump]# ll

total 14720

-rw-r----- 1 oracle oinstall 15065088 Jan 14 10:41 20200114USERS.DMP

-rw-r--r-- 1 oracle oinstall      492 Jan 14 10:42 20200114USERS.log

-rw-r----- 1 oracle oinstall      151 Dec 20 16:14 dp.log

 

7.impdp導入,能夠看到導入的一個過程

[oracle@tldbompx03 ~]$ impdp "'/ as sysdba'" directory=DATA_PUMP_DIR dumpfile=20200114USERS.DMP logfile=20200114USERS.log

 

 

 

8.查看到導入過來的一個過程

 

 

 

本次導入導出須要注意的地方是,使用的鏈接工具是xshell,在140服務器下打開一個sqlplus的窗口進行準備工做,導入的實例是tbomnew,可是又新開了一個窗口,採用的是默認的實例名tbom,因爲新開的窗口沒有確認實例名,因此致使傳輸的數據是另外一個實例下的。

導出錯誤數據的解決方法爲刪除已經導入的用戶,必定要確認IP與實例名。

drop user CORE cascade;

drop user MSTDATA cascade;

drop user BOMMGMT cascade;

drop user CFGMGMT cascade;

drop user CHGMGMT cascade;

drop user CUST cascade;

drop user integration cascade;

相關文章
相關標籤/搜索