下面就為您介紹重裝系統(tǒng)后ORACLE數(shù)據(jù)庫(kù)恢復(fù)的方法,希望對(duì)您學(xué)習(xí)ORACLE數(shù)據(jù)庫(kù)恢復(fù)方面能有所幫助。 第一種: 1、首先,將原來(lái)的ORACLE文件夾改名,原來(lái)的路徑是D:/oracle.我暫時(shí)改成D:/oracle_old.找來(lái)ORACLE(我用的是ORACLE 9I)安裝光盤(pán),將ORACLE安裝在原來(lái)安裝的目錄下,這樣恢復(fù)起來(lái)更加方便,主要是注冊(cè)表的內(nèi)容不用修改。 2、安裝完了之后,系統(tǒng)中又有一個(gè)可以使用的ORACLE了。這個(gè)時(shí)候要做的就是將原來(lái)的文件和數(shù)據(jù)恢復(fù)過(guò)來(lái)。第一步,先關(guān)閉ORACLE的所有已經(jīng)啟動(dòng)的項(xiàng)目,在"服務(wù)"里面逐一關(guān)閉。然后,將安裝目錄改名。我現(xiàn)在用的是D:/oracle.改成D:/oracle_new.再將D:/oracle_old改成D:/oracle. 這樣理論上說(shuō)從物理層面恢復(fù)了ORACLE了。但是我們發(fā)現(xiàn),現(xiàn)在還不能啟動(dòng)ORACLE的監(jiān)聽(tīng)程序和服務(wù)程序。我們還要從邏輯上解決。 3、在dos環(huán)境下執(zhí)行一個(gè)刪除命令:oradim -delete -sid mm,其中mm為創(chuàng)建oracle時(shí)候創(chuàng)建的實(shí)例 建議執(zhí)行這個(gè)命令后重新啟動(dòng)機(jī)器,重啟后就可以建立和原來(lái)實(shí)例名相同的實(shí)例。當(dāng)然你懶,不重新啟動(dòng)也可以,但是你的實(shí)例名就不能和原來(lái)的一樣了。 4、在dos環(huán)境下執(zhí)行命令 oradim -new -sid mm -startmode a -pfile "D:\oracle\admin\mm\pfile\initmm.ora "創(chuàng)建一個(gè)新的實(shí)例,其中 "mm"為新數(shù)據(jù)庫(kù)的名稱(chēng)。 5、啟動(dòng)服務(wù),先打開(kāi)數(shù)據(jù)庫(kù),然后可以用以前的用戶名和密碼登陸進(jìn)去。 要補(bǔ)充的是,一般的ORACLE數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)程序都是用電腦的名稱(chēng)來(lái)識(shí)別地址的,而不是127.0.0.1或者localhost.所以,如果我們安裝系統(tǒng)的時(shí)候用的是不同的電腦名稱(chēng)(比如我原來(lái)用的是wm_mm.重新安裝后用的是wenming_mm),那么我們還有一個(gè)工作要做,就是修改文件 listener.ora.將里面的相關(guān)的東西改過(guò)來(lái)就可以了。 需要耐心、細(xì)心,可能在一步里有一個(gè)細(xì)小的差別就會(huì)出些古怪的錯(cuò)誤提示,有時(shí)需要根據(jù)錯(cuò)誤提示采取策略,總之原理是,先裝一個(gè)一模一樣的ORACLE,安裝目錄、數(shù)據(jù)庫(kù)名稱(chēng)都一樣,這樣保證注冊(cè)表里不用更改;再覆蓋物理文件,最后重新實(shí)例化,打開(kāi)數(shù)據(jù)庫(kù)就可以進(jìn)去了。第二種: 首先,備份數(shù)據(jù)庫(kù)(X:\oracle\oradata)下的數(shù)據(jù)文件,重新命名即可(否則裝數(shù)據(jù)庫(kù)的時(shí)候會(huì)提示sid已存在)。重新安裝數(shù)據(jù)庫(kù),當(dāng)然數(shù)據(jù)庫(kù)的名字就是你要恢復(fù)的名字。安裝完成后,打開(kāi)控制面板,停止oracle的服務(wù)。把(X:\oracle\oradata)下新生成的文件改名,把原先目錄下的文件恢復(fù)名字。再重新啟動(dòng)oracle服務(wù)和監(jiān)聽(tīng)。用sys/as dba 登陸數(shù)據(jù)庫(kù),可能會(huì)提示權(quán)限不夠(ora-01031)修改(X:\oracle\ora92\network\admin )文件夾下的sqlnet.ora文件,添加SQLNET.AUTHENTICATION_SERVICES= (NTS),增加權(quán)限。登陸進(jìn)去后,打開(kāi)table提示不能打開(kāi)。打開(kāi)common頁(yè),執(zhí)行命令alert database open;這時(shí)再刷新table,發(fā)現(xiàn)原先的表可以打開(kāi)了?;謴?fù)成功了。再用原先數(shù)據(jù)庫(kù)的普通用戶進(jìn)入。發(fā)現(xiàn)一切正常。至此,大功告成。
成都創(chuàng)新互聯(lián)專(zhuān)注于克什克騰網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供克什克騰營(yíng)銷(xiāo)型網(wǎng)站建設(shè),克什克騰網(wǎng)站制作、克什克騰網(wǎng)頁(yè)設(shè)計(jì)、克什克騰網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造克什克騰網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供克什克騰網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。
任何軟件都有可能在有意或無(wú)意的情況下被重新安裝,如Oracle重裝后數(shù)據(jù)庫(kù)怎么恢復(fù)呢?情況發(fā)生在你是無(wú)意的情況下!ORACLE數(shù)據(jù)庫(kù)恢復(fù)的方法我們經(jīng)常會(huì)用到,下面就為您介紹重裝系統(tǒng)后ORACLE數(shù)據(jù)庫(kù)恢復(fù)的方法,希望對(duì)您學(xué)習(xí)ORACLE數(shù)據(jù)庫(kù)恢復(fù)方面能有所幫助。\x0d\x0a\x0d\x0a我的電腦突然掛了,不得不重裝系統(tǒng),不過(guò)我的ORACLE裝在了D盤(pán),所有的文件都還在,我相信一定能夠恢復(fù),直到搞定工作,我才開(kāi)始整我的數(shù)據(jù)庫(kù),花了兩天時(shí)間,終于恢復(fù)了,慶祝一下,同時(shí)總結(jié)一下,希望有遇到同樣問(wèn)題的朋友能夠快速搞定此類(lèi)問(wèn)題\x0d\x0a\x0d\x0a第一種:\x0d\x0a\x0d\x0a首先,備份數(shù)據(jù)庫(kù)(X:\oracle\oradata)下的數(shù)據(jù)文件,重新命名即可(否則裝數(shù)據(jù)庫(kù)的時(shí)候會(huì)提示sid已存在)。重新安裝數(shù)據(jù)\x0d\x0a庫(kù),當(dāng)然數(shù)據(jù)庫(kù)的名字就是你要恢復(fù)的名字。安裝完成后,打開(kāi)控制面板,停止oracle的服務(wù)。把(X:\oracle\oradata)下新生成的文件\x0d\x0a改名,把原先目錄下的文件恢復(fù)名字。再重新啟動(dòng)oracle服務(wù)和監(jiān)聽(tīng)。用sys/as dba \x0d\x0a登陸數(shù)據(jù)庫(kù),可能會(huì)提示權(quán)限不夠(ora-01031)修改(X:\oracle\ora92\network\admin \x0d\x0a)文件夾下的sqlnet.ora文件,添加SQLNET.AUTHENTICATION_SERVICES= \x0d\x0a(NTS),增加權(quán)限。登陸進(jìn)去后,打開(kāi)table提示不能打開(kāi)。打開(kāi)common頁(yè),執(zhí)行命令alert database \x0d\x0aopen;這時(shí)再刷新table,發(fā)現(xiàn)原先的表可以打開(kāi)了?;謴?fù)成功了。再用原先數(shù)據(jù)庫(kù)的普通用戶進(jìn)入。發(fā)現(xiàn)一切正常。至此,大功告成。\x0d\x0a\x0d\x0a第二種:\x0d\x0a\x0d\x0a1、首先,將原來(lái)的ORACLE文件夾改名,原來(lái)的路徑是D:/oracle.我暫時(shí)改成D:/oracle_old.找來(lái)ORACLE(我用\x0d\x0a的是ORACLE 9I)安裝光盤(pán),將ORACLE安裝在原來(lái)安裝的目錄下,這樣恢復(fù)起來(lái)更加方便,主要是注冊(cè)表的內(nèi)容不用修改。\x0d\x0a\x0d\x0a2、安裝完了之后,系統(tǒng)中又有一個(gè)可以使用的ORACLE了。這個(gè)時(shí)候要做的就是將原來(lái)的文件和數(shù)據(jù)恢復(fù)過(guò)來(lái)。第一步,先關(guān)閉ORACLE的所\x0d\x0a有已經(jīng)啟動(dòng)的項(xiàng)目,在"服務(wù)"里面逐一關(guān)閉。然后,將安裝目錄改名。我現(xiàn)在用的是D:/oracle.改成D:/oracle_new.再將D:\x0d\x0a/oracle_old改成D:/oracle. \x0d\x0a這樣理論上說(shuō)從物理層面恢復(fù)了ORACLE了。但是我們發(fā)現(xiàn),現(xiàn)在還不能啟動(dòng)ORACLE的監(jiān)聽(tīng)程序和服務(wù)程序。我們還要從邏輯上解決。\x0d\x0a\x0d\x0a3、在dos環(huán)境下執(zhí)行一個(gè)刪除命令:oradim -delete -sid mm,其中mm為創(chuàng)建oracle時(shí)候創(chuàng)建的實(shí)例 \x0d\x0a建議執(zhí)行這個(gè)命令后重新啟動(dòng)機(jī)器,重啟后就可以建立和原來(lái)實(shí)例名相同的實(shí)例。當(dāng)然你懶,不重新啟動(dòng)也可以,但是你的實(shí)例名就不能和原來(lái)的一樣了。\x0d\x0a\x0d\x0a4、在dos環(huán)境下執(zhí)行命令 oradim -new -sid mm -startmode a -pfile "D:\oracle\admin\mm\pfile\initmm.ora "創(chuàng)建一個(gè)新的實(shí)例,其中 "mm"為新數(shù)據(jù)庫(kù)的名稱(chēng)。\x0d\x0a\x0d\x0a5、啟動(dòng)服務(wù),先打開(kāi)數(shù)據(jù)庫(kù),然后可以用以前的用戶名和密碼登陸進(jìn)去。 \x0d\x0a要補(bǔ)充的是,一般的ORACLE數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)程序都是用電腦的名稱(chēng)來(lái)識(shí)別地址的,而不是127.0.0.1或者localhost.所以,如果我們安裝系\x0d\x0a統(tǒng)的時(shí)候用的是不同的電腦名稱(chēng)(比如我原來(lái)用的是wm_mm.重新安裝后用的是wenming_mm),那么我們還有一個(gè)工作要做,就是修改文件 \x0d\x0alistener.ora.將里面的相關(guān)的東西改過(guò)來(lái)就可以了。\x0d\x0a\x0d\x0a需要耐心、細(xì)心,可能在一步里有一個(gè)細(xì)小的差別就會(huì)出些古怪的錯(cuò)誤提示,有時(shí)需要根據(jù)錯(cuò)誤提示采取策略,總之原理是,先裝一個(gè)一模一樣的ORACLE,安裝目錄、數(shù)據(jù)庫(kù)名稱(chēng)都一樣,這樣保證注冊(cè)表里不用更改;再覆蓋物理文件,最后重新實(shí)例化,打開(kāi)數(shù)據(jù)庫(kù)就可以進(jìn)去了。
方法一:
首先,備份數(shù)據(jù)庫(kù)下的數(shù)據(jù)文件,在重新命名,重新安裝數(shù)據(jù)庫(kù)。安裝完成后,打開(kāi)控制面板,停止oracle的服務(wù)。把(x:\oracle\oradata)下新生成的文件改名,把原先目錄下的文件恢復(fù)名字,再重新啟動(dòng)oracle服務(wù)和監(jiān)聽(tīng)。用sys/as
dba登陸數(shù)據(jù)庫(kù),登陸進(jìn)去后,打開(kāi)table提示不能打開(kāi)。打開(kāi)common頁(yè),執(zhí)行命令alert
database
open;這時(shí)再刷新table,用原先數(shù)據(jù)庫(kù)的普通用戶進(jìn)入,數(shù)據(jù)成功恢復(fù)。
方法二:
1、將原來(lái)的oracle文件夾改名,找來(lái)oracle安裝光盤(pán),將oracle安裝在原來(lái)安裝的目錄下。
2、安裝完畢,系統(tǒng)中多出一個(gè)可用的oracle了。將原來(lái)的文件和資料恢復(fù)過(guò)來(lái)上去。第一步,先關(guān)閉oracle的所有已經(jīng)啟動(dòng)的項(xiàng)目,在“服務(wù)”里面逐一關(guān)閉。然后,將安裝目錄改名。
3、在dos環(huán)境下執(zhí)行一個(gè)刪除命令:oradim
-delete
-sid
mm,其中mm為創(chuàng)建oracle時(shí)候創(chuàng)建的實(shí)例建議執(zhí)行這個(gè)命令后重新啟動(dòng)機(jī)器,重啟后就可以建立和原來(lái)實(shí)例名相同的實(shí)例。
4、在dos環(huán)境下執(zhí)行命令
oradim
-new
-sid
mm
-startmode
a
-pfile
"d:\oracle\admin\mm\pfile\initmm.ora
"創(chuàng)建一個(gè)新的實(shí)例,其中
“mm”為新數(shù)據(jù)庫(kù)的名稱(chēng)。
5、啟動(dòng)服務(wù),先打開(kāi)數(shù)據(jù)庫(kù),然后可以用以前的用戶名和密碼登陸進(jìn)去。要補(bǔ)充的是還要修改文件listener.ora,將里面的相關(guān)的東西改過(guò)來(lái)就可以了。
上面我們通過(guò)建立一個(gè)一模一樣的oracle,安裝目錄、數(shù)據(jù)庫(kù)名稱(chēng)都一樣,這樣保證注冊(cè)表里不用更改;再覆蓋物理文件,最后重新實(shí)例化,達(dá)到資料恢復(fù)的目的。資料恢復(fù)中心提醒:由于上述操作比較復(fù)雜,所以非專(zhuān)業(yè)人士請(qǐng)勿盲目操作,應(yīng)該第一時(shí)間聯(lián)系資料恢復(fù)中心可以為你解決資料恢復(fù)問(wèn)題。
重裝系統(tǒng)前,將數(shù)據(jù)庫(kù)備份,重裝系統(tǒng)后恢復(fù)。
重裝系統(tǒng)后,按照原始規(guī)格創(chuàng)建數(shù)據(jù)庫(kù)【各項(xiàng)參數(shù)要全部和原來(lái)的相同,安裝路徑、數(shù)據(jù)文件路徑、用戶、授權(quán)、表空間等等,數(shù)據(jù)庫(kù)版本也要相同】,設(shè)定所有oracle服務(wù)為手動(dòng)啟動(dòng),重啟電腦,將原始文件覆蓋到生成的目錄下,恢復(fù)啟動(dòng)方式,重啟電腦
不知道你重裝前都備份了哪些文件,只要你那五種文件都有備份,恢復(fù)起來(lái)不是很難。主要?dú)w納為以下幾步:
1.將原來(lái)的oracle文件夾重命名,比如oracle_old;然后重新安裝oracle
到原目錄,即跟重裝操作系統(tǒng)前同一目錄,假設(shè)為d:\oracle;安裝過(guò)程選擇"只安裝軟件"
即不創(chuàng)建數(shù)據(jù)庫(kù),這樣可以節(jié)省很多時(shí)間.
注:恢復(fù)必須要有以下文件
a、初始化參數(shù)文件INIT.ORA
b、所有數(shù)據(jù)文件 .dbf
c、所有重做日志文件(聯(lián)機(jī)日志、歸檔日志)redo
d、所有控制文件 crtl
e、internal密碼文件
2.配置listener和tns:
運(yùn)行l(wèi)snrctl start,即可在創(chuàng)建監(jiān)聽(tīng)服務(wù);
使用net manager配置tns,但不要測(cè)試(數(shù)據(jù)庫(kù)沒(méi)有起來(lái)肯定測(cè)試不通過(guò)的);
3.將oradata文件夾拷貝回原目錄(如d:oracleoradata);
4.將spfile拷貝回原目錄(如d:oracleora92database);
5.創(chuàng)建實(shí)例服務(wù):
oradim -new -sid orcl -startmode auto
6.重建口令文件:或是復(fù)制原來(lái)的pwdorcl.ora yhy9為實(shí)例名
orapwd file=d:oracleora92database password=orcl entries=5
7.重啟監(jiān)聽(tīng)和實(shí)例.
8.如果數(shù)據(jù)庫(kù)沒(méi)有啟動(dòng)就進(jìn)入sqlplus手工打開(kāi)數(shù)據(jù)庫(kù)
sqlplus /nolog
sqlconn sys/orcl@orcl as sysdba
sqlstartup;
一定要有提示成功打開(kāi),否則重復(fù)以上辦法解決。
9.如果數(shù)據(jù)庫(kù)順利打開(kāi),整個(gè)實(shí)例恢復(fù)過(guò)程即完成.
經(jīng)驗(yàn)證通過(guò)以上操作,完全可以恢復(fù)成功。需要的是耐心、細(xì)心。
如果中間有報(bào)錯(cuò),則一步步根據(jù)報(bào)錯(cuò)到網(wǎng)上查找解決辦法。
1、安裝Oracle數(shù)據(jù)庫(kù)軟件,并且用Oracle管理工具中的Database Configuration Assistant 根據(jù)對(duì)方提供的數(shù)據(jù)庫(kù)名建立數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)版本則要和導(dǎo)出當(dāng)前dmp文件的數(shù)據(jù)庫(kù)版本一致。
2、透過(guò)腳本文件建立導(dǎo)入dmp文件所需的表空間、用戶、規(guī)則以及相關(guān)的授權(quán)。
3、將dmp文件復(fù)制到新安裝的Oracle數(shù)據(jù)庫(kù)服務(wù)器中,準(zhǔn)備導(dǎo)入這個(gè)數(shù)據(jù)庫(kù)文件。
4、通過(guò)cmd調(diào)出運(yùn)行窗口,用imp命令導(dǎo)入數(shù)據(jù)。
5、通過(guò)數(shù)據(jù)庫(kù)管理工具連接數(shù)據(jù)庫(kù),就可以查詢到dmp文件中的數(shù)據(jù)了。