1. 程式人生 > >數據庫恢復(database restore)之兵不血刃——半小時恢復客戶數據庫

數據庫恢復(database restore)之兵不血刃——半小時恢復客戶數據庫

oracle11g ora 設置環境變量 ceo 出了 ice art work sqlplus

昨天,一個客戶打打來電話,說他們的數據庫壞了,不能用了,需要我幫助恢復下,這馬上要放假了,居然出了這事兒,自己也不太喜歡恢復數據庫這類,尤其是他們的數據庫是個win上的庫,但心裏很清楚,客戶比咱著急,客戶就是上帝,沒什麽好說的,開工吧。通過認真了解,大體明白了客戶的情況,他們的庫是在win上的Oracle11g,因為殺毒軟件的把Oracle軟件的某些文件當成了病毒給刪了,而且頑固到拷貝過去就會刪掉,後來也不知道刪了多少文件,數據庫就起不來了,我也不知道他們把數據庫給主動關了,還是數據庫自己宕掉了,反正結果就是起不來了。經過檢查,數據文件應該還沒問題,只是大體判斷而已,開始恢復吧。

1、安裝軟件

首先,得先重新安裝Oracle軟件,經過和客戶溝通,他們很自信的說可以自己重新安裝軟件,於是,先由他們來安裝數據庫軟件,為了保險起見,讓他們把軟件安裝到和之前不同的位置。讓我有點驚訝的是,客戶安裝軟件非常快,可能也就10多分鐘就裝完了。為了說明,假設原來的軟件安裝路徑為:

d:\app\erp\product\11.2.0\dbhome_1

新安裝軟件的路徑為:

d:\app\erp\product\11.2.0\dbhome_2

軟件裝完了,接下來需要做的就是看看能否用新安裝的軟件把數據庫拉起來。
2、設置環境變量

打開計算機高級設置-->環境變量設置--->設置:

ORACLE_SID=ora11g

ORACLE_BASE=d:\app\erp\product\

ORACLE_HOME=d:\app\erp\product\11.2.0\dbhome_2

將path中oracle有關路徑d:\app\erp\product\11.2.0\dbhome_1\bin -->d:\app\erp\product\11.2.0\dbhome_2\bin

3、拷貝相應文件:

cp d:\app\erp\product\11.2.0\dbhome_1\database\*.* d:\app\erp\product\11.2.0\dbhome_2\database\

cp d:\app\erp\product\11.2.0\dbhome_1\network\*.* d:\app\erp\product\11.2.0\dbhome_2\network\

4、註銷並重新登錄OS用戶
5、先刪除舊的oracle服務

oradim -delete -srvc oracleserviceora11g
6、新建oracle服務:
oradim -new -srvc oracleserviceora11g -sid ora11g -startmode auto -shutmode immediate -srvcstart demande -spfile
7、重啟新建的oracle服務

net start oracleserviceora11g

lsnrctl start
8、登錄數據庫測試:
sqlplus test/test@ora11g
如果能順利登錄數據庫,說明到此一切OK。
9、刪除舊的oracle軟件目錄,以釋放空間。

10、至此,客戶數據庫恢復完成,前後大概半個多小時的樣子。

數據庫恢復(database restore)之兵不血刃——半小時恢復客戶數據庫