C-Sharp
以程式方式備份/恢復 Oracle DB 的推薦方法
假設我在一台伺服器上有一個不斷增長的 Oracle 數據庫,並且我想在另一台伺服器上複製這個模式和數據 - 作為定制 .net 應用程序的一部分,實現這一目標的最佳方法是什麼?
我嘗試過/研究過的內容:
- RMAN - 似乎是可用於編寫批處理文件以進行備份的最合適的技術,但我不覺得我對它有太多的控制,就好像它是在 C# 中從頭開始開發的一樣。
- PL/SQL - 我可以使用儲存過程將數據導出到 csv 並將其與 C# 結合起來嗎?
- DataReaders 和官方 Oracle API——在我看來是最有利的方法,因為它是我最熟悉的——但鑑於上述兩種技術有能力創建這些備份,我是否在重新發明輪子?
- ‘OOTB’ oracle 執行檔 - https://stackoverflow.com/questions/12524284/taking-oracle-database-dump-via-c-sharp-net http://rockingtechnology.blogspot.co.uk/2011/06/oracle -備份和恢復-cnet.html 中的程式碼
如果你想複製產品。db 到 dev。環境。我經常建議您對整個數據庫使用 RMAN。或者 exp/imp (expdp/impdp) 用於單個模式。對於沒有 Oracle 經驗的開發人員來說,RMAN 並不容易使用,但最終您會發現這種方法最快且最安全。
如果您打算將您的 prod 數據庫複製到某個報告伺服器中,也許您應該查看“Active Data Guard”。
在 Oracle 中,您將找到適合各種用途的“正確”技術。最終決定將取決於您的實際需求(目標)。