2010-09-08 95 views
3

我需要將Oracle數據庫從生產導入到開發中,僅用於一個模式。最簡單的方法是什麼? 我所做的是使用此模式刪除用戶並使用相同的選項重新創建用戶並運行import命令。這是正確的方法嗎?這是導入Oracle轉儲數據庫的正確方法嗎?

我使用的是Oracle 10g,我是一名開發人員而不是DBA,但我的DBA爲我提供了轉儲文件,並且需要構建一個本地測試環境。

我需要刪除用戶嗎?我可以刪除此用戶的所有對象嗎?

回答

2

當你說轉儲文件時,你的意思是RMAN備份或數據泵文件?如果是後者,則應該使用Oracle數據泵導入實用程序impdp來引入文件。一些文檔可以在這裏找到:http://www.orafaq.com/wiki/Datapump

如果是前者,最好的辦法是使用企業管理控制檯安排RMAN恢復作業。

+0

破維基鏈接 – 2012-03-05 08:57:57

1

我也是開發人員而不是DBA,但最近不得不使用導入\導出功能。

我使用Oracle Data Pump來​​實現這一點,發現Oracle文檔非常有用。

數據泵的文檔可以在here找到,有關Oracle稱爲「原始導出和導入」的文檔可以在here找到。

2

我所做的就是放棄使用此模式的用戶並使用相同的選項重新創建用戶並運行import命令。這是正確的做法

這幾乎是我在我的筆記本電腦上創建開發架構時所做的。

我可以只刪除該用戶的所有對象嗎?

我認爲這是一個相當混亂的方法。最好是放棄用戶並導入它。

+0

你是什麼意思「凌亂的辦法」? – 2010-09-10 11:52:11

+0

@henry你打算如何刪除對象?放下他們?你將如何處理依賴關係(例如:對象A依賴於依賴於C的B,但你試圖刪除對象A,這可能會失敗)?重新創建對象時,相同的依賴關係將發揮作用。表格中的數據如何?不要自己動手做這些事情,而應該頭疼不已,爲什麼不使用隨時準備好的工具呢?我以前也曾考慮過同樣的方法,但我越想到它,它就變得越複雜。所以我放棄了整個想法,只是放棄用戶並重新創建用戶。 – Sathya 2010-09-11 21:51:26

+0

我不同意你的看法。你可以使用「級聯約束」。爲依賴。您在重新創建時仍然可以導入。我同意放棄用戶是一種方式。我只是想知道放下所有物體可能是另一種方式。 – 2010-09-13 12:40:38

0

打開命令提示和寫

imp userName/[email protected] file=Path full=y

其中

userName = oracle用戶
password =用戶密碼
Schema = Oracle模式
Path = C:\ dumpfile.dmp

相關問題