任何軟體都有可能在有意或無意的情況下被重新安裝,如Oracle重灌後資料庫怎麼恢復呢?情況發生在你是無意的情況下!ORACLE資料庫恢復的方法我們經常會用到,下面就為您介紹重灌系統後ORACLE資料庫恢復的方法,希望對您學習ORACLE資料庫恢復方面能有所幫助。 我的電腦突然掛了,不得不重灌系統,不過我的ORACLE裝在了D盤,所有的檔案都還在,我相信一定能夠恢復,直到搞定工作,我才開始整我的資料庫,花了兩天時間,終於恢復了,慶祝一下,同時總結一下,希望有遇到同樣問題的朋友能夠快速搞定此類問題 第一種: 首先,備份資料庫(X:\oracle\oradata)下的資料檔案,重新命名即可(否則裝資料庫的時候會提示sid已存在)。重新安裝資料庫,當然資料庫的名字就是你要恢復的名字。安裝完成後,開啟控制面板,停止oracle的服務。把(X:\oracle\oradata)下新生成的檔案改名,把原先目錄下的檔案恢復名字。再重新啟動oracle服務和監聽。用sys/as dba 登陸資料庫,可能會提示許可權不夠(ora-01031)修改(X:\oracle\ora92\network\admin )資料夾下的sqlnet.ora檔案,新增SQLNET.AUTHENTICATION_SERVICES= (NTS),增加許可權。登陸進去後,開啟table提示不能開啟。開啟common頁,執行命令alert database open;這時再重新整理table,發現原先的表可以打開了。恢復成功了。再用原先資料庫的普通使用者進入。發現一切正常。至此,大功告成。 第二種: 1、首先,將原來的ORACLE資料夾改名,原來的路徑是D:/oracle.我暫時改成D:/oracle_old.找來ORACLE(我用的是ORACLE 9I)安裝光碟,將ORACLE安裝在原來安裝的目錄下,這樣恢復起來更加方便,主要是登錄檔的內容不用修改。 2、安裝完了之後,系統中又有一個可以使用的ORACLE了。這個時候要做的就是將原來的檔案和資料恢復過來。第一步,先關閉ORACLE的所有已經啟動的專案,在"服務"裡面逐一關閉。然後,將安裝目錄改名。我現在用的是D:/oracle.改成D:/oracle_new.再將D:/oracle_old改成D:/oracle. 這樣理論上說從物理層面恢復了ORACLE了。但是我們發現,現在還不能啟動ORACLE的監聽程式和服務程式。我們還要從邏輯上解決。 3、在dos環境下執行一個刪除命令:oradim -delete -sid mm,其中mm為建立oracle時候建立的例項 建議執行這個命令後重新啟動機器,重啟後就可以建立和原來例項名相同的例項。當然你懶,不重新啟動也可以,但是你的例項名就不能和原來的一樣了。 4、在dos環境下執行命令 oradim -new -sid mm -startmode a -pfile "D:\oracle\admin\mm\pfile\initmm.ora "建立一個新的例項,其中 "mm"為新資料庫的名稱。 5、啟動服務,先開啟資料庫,然後可以用以前的使用者名稱和密碼登陸進去。 要補充的是,一般的ORACLE資料庫的監聽程式都是用電腦的名稱來識別地址的,而不是127.0.0.1或者localhost.所以,如果我們安裝系統的時候用的是不同的電腦名稱(比如我原來用的是wm_mm.重新安裝後用的是wenming_mm),那麼我們還有一個工作要做,就是修改檔案 listener.ora.將裡面的相關的東西改過來就可以了。 需要耐心、細心,可能在一步裡有一個細小的差別就會出些古怪的錯誤提示,有時需要根據錯誤提示採取策略,總之原理是,先裝一個一模一樣的ORACLE,安裝目錄、資料庫名稱都一樣,這樣保證登錄檔裡不用更改;再覆蓋物理檔案,最後重新例項化,開啟資料庫就可以進去了。
任何軟體都有可能在有意或無意的情況下被重新安裝,如Oracle重灌後資料庫怎麼恢復呢?情況發生在你是無意的情況下!ORACLE資料庫恢復的方法我們經常會用到,下面就為您介紹重灌系統後ORACLE資料庫恢復的方法,希望對您學習ORACLE資料庫恢復方面能有所幫助。 我的電腦突然掛了,不得不重灌系統,不過我的ORACLE裝在了D盤,所有的檔案都還在,我相信一定能夠恢復,直到搞定工作,我才開始整我的資料庫,花了兩天時間,終於恢復了,慶祝一下,同時總結一下,希望有遇到同樣問題的朋友能夠快速搞定此類問題 第一種: 首先,備份資料庫(X:\oracle\oradata)下的資料檔案,重新命名即可(否則裝資料庫的時候會提示sid已存在)。重新安裝資料庫,當然資料庫的名字就是你要恢復的名字。安裝完成後,開啟控制面板,停止oracle的服務。把(X:\oracle\oradata)下新生成的檔案改名,把原先目錄下的檔案恢復名字。再重新啟動oracle服務和監聽。用sys/as dba 登陸資料庫,可能會提示許可權不夠(ora-01031)修改(X:\oracle\ora92\network\admin )資料夾下的sqlnet.ora檔案,新增SQLNET.AUTHENTICATION_SERVICES= (NTS),增加許可權。登陸進去後,開啟table提示不能開啟。開啟common頁,執行命令alert database open;這時再重新整理table,發現原先的表可以打開了。恢復成功了。再用原先資料庫的普通使用者進入。發現一切正常。至此,大功告成。 第二種: 1、首先,將原來的ORACLE資料夾改名,原來的路徑是D:/oracle.我暫時改成D:/oracle_old.找來ORACLE(我用的是ORACLE 9I)安裝光碟,將ORACLE安裝在原來安裝的目錄下,這樣恢復起來更加方便,主要是登錄檔的內容不用修改。 2、安裝完了之後,系統中又有一個可以使用的ORACLE了。這個時候要做的就是將原來的檔案和資料恢復過來。第一步,先關閉ORACLE的所有已經啟動的專案,在"服務"裡面逐一關閉。然後,將安裝目錄改名。我現在用的是D:/oracle.改成D:/oracle_new.再將D:/oracle_old改成D:/oracle. 這樣理論上說從物理層面恢復了ORACLE了。但是我們發現,現在還不能啟動ORACLE的監聽程式和服務程式。我們還要從邏輯上解決。 3、在dos環境下執行一個刪除命令:oradim -delete -sid mm,其中mm為建立oracle時候建立的例項 建議執行這個命令後重新啟動機器,重啟後就可以建立和原來例項名相同的例項。當然你懶,不重新啟動也可以,但是你的例項名就不能和原來的一樣了。 4、在dos環境下執行命令 oradim -new -sid mm -startmode a -pfile "D:\oracle\admin\mm\pfile\initmm.ora "建立一個新的例項,其中 "mm"為新資料庫的名稱。 5、啟動服務,先開啟資料庫,然後可以用以前的使用者名稱和密碼登陸進去。 要補充的是,一般的ORACLE資料庫的監聽程式都是用電腦的名稱來識別地址的,而不是127.0.0.1或者localhost.所以,如果我們安裝系統的時候用的是不同的電腦名稱(比如我原來用的是wm_mm.重新安裝後用的是wenming_mm),那麼我們還有一個工作要做,就是修改檔案 listener.ora.將裡面的相關的東西改過來就可以了。 需要耐心、細心,可能在一步裡有一個細小的差別就會出些古怪的錯誤提示,有時需要根據錯誤提示採取策略,總之原理是,先裝一個一模一樣的ORACLE,安裝目錄、資料庫名稱都一樣,這樣保證登錄檔裡不用更改;再覆蓋物理檔案,最後重新例項化,開啟資料庫就可以進去了。