如何在不知道Oracle備份檔案(DMP格式)的其他資訊時恢復檔案
阿新 • • 發佈:2019-02-06
背景:當拿到一個oracle的一個dmp格式的備份檔案時,不知道它的任何資訊,怎麼還原資料。這也是在偶然間胡亂搞出來的。不知道是否在任何情況下都有效!
我是利用Toad for Oracle工具實現的
1、在當前資料庫中建立一個新的使用者call(這時候使用者名稱可以隨便起),授權connect,resource,dba。這個建立過程就演示了
2、開啟toad for oracle軟體,用call使用者連線到資料庫,選擇dba角色(我用的時候提示我必須dba角色)。
3、進入後,選擇database -->import -->import Utility wizard,如圖:
這裡需要注意,因為不知道備份檔案中的資訊,也不知道之前有哪些使用者。就選擇call吧,因為最後也會提示使用者錯誤的。記得點選add按鈕將
這裡選擇DMP檔案,其他預設就好
點選finish就開始匯入了,這時候注意看日誌檔案,報什麼錯,就處理什麼錯。
講講我遇到的錯誤,
首頁,在第一次匯入的時候報了一個“沒有XXX表空間”,根據這個提示,我建立了相應的表空間。
接著,重複之前的匯入步驟,這個時候就沒有報之前的錯誤,這時候報沒有“XX使用者”,根據這個,我建立了一個提示的使用者(表空間是之前建立的,並授權connect,resource,dba)。
接著,又重複之前的匯入步驟,這個時候就沒有報之前的錯誤,但又報了缺少另一個“XXX使用者”,根據這個,我又建立了一個提示的使用者(表空間也是之前建立的,並也授權connect,resource,dba)。
最後,再重複之前的匯入步驟,這個 時候就一點錯沒有報了,順利匯入全部資料。
希望也有類似情況的朋友也可以這樣試試,雖然不知道這是不是一個好方法,但是確確實實解決了一個問題!