您好,登錄后才能下訂單哦!
這篇文章主要介紹怎么通過.dbf文件還原數據庫,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
需求:
我方(乙方)需要一套完善的測試環境,基于甲方提供的his測試庫來搭建自己的環境
現有資源:
一臺操作系統是Windows Server2008R2_enterprise_64bit的服務器
甲方提供資源:
測試服務器操作系統是WindowsServer2003_64bit
數據庫是10g(Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod)
數據庫字符集US7ASCII
數據庫文件.dbf總大小178G(rar壓縮包是22.9G,rar對于.dbf文件壓縮率是:n=22.9/178=0.129=13%)
初步執行計劃如下:
方案1(保守):
1.創建虛擬機(建必要的快照),在虛擬機上搭建WindowsServer2003,安裝Oracle10g(安裝軟件找信息科索取,要求安裝包的版本與測試環境一致)
2.冷備測試庫還原10g
方案2(沒試過,試一次的時間周期也挺長的1-2天):
上述若失敗,則
1.創建虛擬機(建必要的快照),在虛擬機上搭建WindowsServer2008r2
2.expdp 10g全庫到11g(按schema導不現實,dba_users有7352個)
方案3(pride連接報錯):
上述若失敗,則
1.expdp 10g34個schema(通過dba_objects.owner篩選的來)到11g,然后pride連接報錯跟蹤!
方案4(至今未測試過):
上述若失敗,則
1.sqldeveloper 數據庫復制
方案5(死馬當活馬醫):
上述若失敗,則
1.在windows2008r2,11g上還原冷備10g
若上述5種都失敗,那就game over了!
結果第一種方案是最佳的,時間周期最少。
給.dbf文件打壓縮包和拷貝移動到恢復的機器上消耗時間太長(大多時候白天復雜,晚上接著干)。
一定要知曉原理(Oracle的體系結構)!!!
如,Oracle的三個狀態分別讀取什么文件,這些文件用來干嘛?
好了,言歸正傳,講講方案1的成功實踐。
1.首先打包測試庫的.dbf文件(178G,壓縮之后傳快且不容易丟包)
2.創建Windows Server2003_64Bit虛擬機
3.安裝oracle10g軟件(僅安裝數據庫軟件),ORACLE_HOME目錄(他這里是C:\oracle\product\10.2.0\db_2)與提供的測試庫一致。
4.將拷貝的.dbf解壓到oradata文件路徑下。
5.將測試庫的pfile文件拷貝到C:\oracle\product\10.2.0\db_2\database\initorcl.ora目錄下
在測試庫需要執行的語句:
create pfile from spfile;
6.獲取測試庫的控制文件創建語句
在測試庫需要執行的語句:
alter database backup controlfile to trace;
show parameter dump
得到user_dump_dest=路徑(在該路徑下找到最新生成.trc<生成2個文件.trc,相對大些的是要找的>,更改控制文件<改一下對應的.dbf現在的路徑>)
7.創建實例
oradim -new -sid orcl
set oracle_sid=orcl
sqlplus / as sysdba
startup
注意,提供的C:\oracle\product\10.2.0\db_2\下的幾個文件夾:admin、flash_recovery_area最好也拷貝過來。
以上是“怎么通過.dbf文件還原數據庫”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。