帶有Wallet的impdp匯入過程

2022-03-07 06:58:39 字數 1552 閱讀 1946

今天接到乙個任務,要求還原由expdp方式匯出的dmp包。

環境:源oracle版本:oracle 10g r2,目標oracle版本 :11g r2。

源作業系統 :windows 2003 server sp2,目標作業系統:suse 11.1。

步驟如下:

1、建立oracle directory。

使用root使用者登入suse系統,建立目錄/u01/oradir,作為directory的物理目錄。同時授予oracle使用者訪問此目錄的許可權 chown 777 oracle /u01/oradir。切換至oracle 使用者,用system賬戶登入oracle,建立directory。create or replace directory dpdata as 『/u01/oradir』.建立完成後,輸入命令檢視結果。select * from dba_directories。

owner                          directory_name

directory_path

sys                            dpdata

/u01/oradir

2、將dmp檔案copy至/u01/oradir中。

3、切換至oracle使用者,資料impdp命令進行匯入。

impdp system/password encryption_password=password dumpfile=init.dmp

悲劇的發現無法正常匯入無法找到wallet配套的金鑰。看來還需要啟動wallet才行.上網查了一下,發現需要在oracle的sqlnet.ora檔案中新增加對wallet的路徑設定才行。於是興致勃勃的找到你安裝oracle 的路徑,例如:/u01/oracle/product/11gr2/db/network/admin,又一次悲劇的發現居然沒有sqlnet.ora。原來對於oracle服務端來說sqlnet.ora不是必須的,所以我們在這裡必須手動建立乙個。

從windows下的oracle client中拷貝乙個sqlnet.ora到linux中,配置wallet路徑,配置項如下:

encryption_wallet_location =

(source=

(method=file)

(method_data=

(directory=/u01/orawallet)))

重啟oracle服務,再次執行匯入命令,又一次的發現報出許可權錯誤,這又是什麼問題啊。查了一下,發現問題處在sqlnet檔案的第一行上,sqlnet.authentication_services= (nts),這裡表示在windows中進行作業系統的許可權驗證,需要將這一行注釋掉。

再次重啟oracle服務,發現匯入命令終於可以正常使用了。

4、 匯入某個schema資料。在匯入過程中發現無法進行多個schemad的同時匯入操作,只能單個schema匯入,這個有待再研究,匯入命令為:

impdp system/password encryption_password=password dumpfile=init.dmp schemas=yourschema

5、以上操作均是在system使用者下進行的。

impdp匯入dmp檔案 impdp資料匯入異常

大概700g的資料用了下面的匯入語句 impdp但是發現導數在半夜突然因為system表滿了停了下來,看到近乎30g的system表空間完全滿了,不像是日誌檔案的樣子。前前後後弄了很久 解決方案如下 impdp aeis xx 密碼 ip 埠 orcl directory data pump dir...

用impdp導dmp檔案

1.建立directory create or replace directory export directory as usr local oracle oracle product 11.2.0 dbhome1 rdbms log directory是乙個路徑,用來存放dmp檔案以及生成的lo...

impdp匯入遇到的問題

由於本地的生產庫需要更新,要的也比較著急,由於管理 在另外乙個系統裡,所以就聯絡他們那邊的dba,叫他們導一下的dmp檔案,檔案是拿過來了,剛開始採用imp命令匯入,報一些錯,網上查了一下,說是資料庫版本的問題,後來聯絡他們的dba,不是這個問題導致的,最後看了一下他的匯出日誌,是以expdb命令匯...