如何透過.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最好也複製過來。
參考連結:
dbtiger 2018,3,15
good luck!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29267792/viewspace-2151862/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL Server資料庫還原過程記錄,bak檔案+mdf檔案SQLServer資料庫
- Sqlserver資料庫使用 .bak 檔案還原資料庫SQLServer資料庫
- sqlserver 透過壓縮bak檔案實現從伺服器還原資料庫《資料差異數個小時》SQLServer伺服器資料庫
- 透過修改控制檔案scn推進資料庫scn資料庫
- 【資料庫資料恢復】透過恢復NDF檔案修復資料庫的資料恢復過程資料庫資料恢復
- 【VMware VCF】透過備份的配置檔案還原 SDDC Manager 元件。元件
- DBF檔案怎麼開啟?DBF檔案的開啟方法教程
- 如何透過SQLyog分析MySQL資料庫MySql資料庫
- dbf是什麼檔案格式 dbf是用什麼軟體如何開啟
- Linux上透過binlog檔案恢復mysql資料庫詳細步驟LinuxMySql資料庫
- sqlserver資料庫還原儲存過程指令碼SQLServer資料庫儲存過程指令碼
- 如何將SQL Server 2000備份的資料庫檔案還原(升級)為SQL Server 2005或更高版本的資料庫?SQLServer資料庫
- 如何透過一條資料庫語句做資料分析資料庫
- Oracle資料庫伺服器dbf檔案中了勒索病毒,副檔名被篡改為.CC7HOracle資料庫伺服器
- 透過等待看資料庫資料庫
- 如何建立和還原SQL Server 2000資料庫?SQLServer資料庫
- 如何建立和還原SQL Server 2005資料庫?SQLServer資料庫
- 將DBF檔案(dBase, FoxPro等)中的資料轉換到SQLiteSQLite
- DM7使用DMRMAN對資料庫執行指定對映檔案還原資料庫
- 達夢資料庫資料檔案遷移過程資料庫
- 如何將Azure SQL 資料庫還原到本地資料庫例項中SQL資料庫
- php百萬資料透過指令碼檔案寫入csvPHP指令碼
- linux檔案相關命令 透過檔案獲取父資料夾名稱Linux
- MAUI Blazor 如何透過url使用本地檔案UIBlazor
- win10如何還原刪除的檔案_win10怎麼還原被刪檔案Win10
- 織夢資料庫_織夢還原資料庫_織夢資料庫很卡資料庫
- 【資料庫資料恢復】透過資料頁恢復Sql Server資料庫資料的過程資料庫資料恢復SQLServer
- sqlserver資料庫的備份還原SQLServer資料庫
- sqlserver資料庫備份,還原操作SQLServer資料庫
- Oracle匯出資料庫與還原Oracle資料庫
- 「MySQL」資料庫備份和還原MySql資料庫
- 「Oracle」Oracle 資料庫備份還原Oracle資料庫
- 【Mongodb】資料庫備份與還原MongoDB資料庫
- 如何透過holer從外網訪問本地的資料庫?資料庫
- 【磐維資料庫】透過python訪問磐維資料庫資料庫Python
- 【資料庫資料恢復】Sql Server資料庫檔案丟失的資料恢復過程資料庫資料恢復SQLServer
- 如何將資料庫中的資料導成 excel 檔案資料庫Excel
- 還原sql server 2000資料庫的坑,不同版本資料庫SQLServer資料庫