如何恢復(fù)只有完好數(shù)據(jù)文件的oracle數(shù)據(jù)庫(kù)?
來(lái)源:考試大 2007/2/26 【
考試大:中國(guó)教育考試第一門(mén)戶】
模擬考場(chǎng) 視頻課程 字號(hào):
T T1.重新創(chuàng)建初始化文件,重要的參數(shù)包括
control_files,db_name,instance_name,background_dump_dest,core_dump_dest,user_dump_dest,\
db_block_size=8192,db_cache_size,db_domain,large_pool_size,pga_aggregate_target,shared_pool_size,
sort_area_size,undo_management,undo_retention,undo_tablespace 等
你可以通過(guò)以下途徑創(chuàng)建一個(gè)初始供修改的參數(shù)文件:
@從備份的參數(shù)文件里得到
@從其他正常運(yùn)行的Oracle實(shí)例里得到,運(yùn)行下面的命令
Create pfile='參數(shù)文件路徑及名稱' from spfile
得到后要修改這個(gè)文件,注意這個(gè)文件對(duì)于恢復(fù)很重要一定要檢查是否正確.
要檢查background_dump_dest,core_dump_dest,user_dump_dest等參數(shù)設(shè)置的目錄是否存在
2.修改監(jiān)聽(tīng)器配置文件.檢查監(jiān)聽(tīng)的數(shù)據(jù)庫(kù)參數(shù).
3.在系統(tǒng)級(jí)設(shè)置環(huán)境變量ORACLE_SID
4.創(chuàng)建實(shí)例
OraDim -NEW -SID sid -startmode m
5.創(chuàng)建Oracle口令文件
OraPwd file=Oracle_HOME/database/pwdsid.ora password=*****
口令文件的位置一定要正確,否則第七步會(huì)報(bào)錯(cuò)
6.啟動(dòng)實(shí)例
@sqlplus "/ as sysdba"
如果你的參數(shù)文件放在缺省位置且名稱符合標(biāo)準(zhǔn)要求,則運(yùn)行
@startup nomount;
否則
@startup nomount pfile='參數(shù)文件路徑及名稱';
7.創(chuàng)建控制文件
示例腳本
CREATE CONTROLFILE SET DATABASE "db_name" RESETLOGS NOARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 453
LOGFILE
GROUP 1 '日志文件路徑及名稱' SIZE 100M,
GROUP 2 '日志文件路徑及名稱' SIZE 100M,
GROUP 3 '日志文件路徑及名稱' SIZE 100M
DATAFILE
'數(shù)據(jù)文件路徑及名稱',
....................
...................
CHARACTER SET ZHS16GBK;
8.打開(kāi)數(shù)據(jù)庫(kù)
Alter Database Open resetlogs;
9. 給臨時(shí)表空間增加臨時(shí)文件
因?yàn)榕R時(shí)文件的創(chuàng)建沒(méi)有包含在創(chuàng)建控制文件的腳本里
所以你需要手工添加給臨時(shí)表空間增加臨時(shí)文件
否則執(zhí)行某些命令的時(shí)候會(huì)異常的。
ALTER TABLESPACE "TEMP"
ADD TEMPFILE 'C:\ORACLE9I\ORADATA\SHARK\Temp01.DBF' [reuse] SIZE 200M
到這里你的恢復(fù)工作完成, 你可以運(yùn)行一些命令檢查一下