ORACLE歸檔模式下恢復(fù)----UNDO,數(shù)據(jù)文件損壞
有個(gè)同學(xué)在MSN和我聊起ORACLE維護(hù)的事,他對(duì)歸檔文件的概念不是很熟。我就叫他看書,他講看書暈糊糊,叫我做個(gè)實(shí)例給他看。我就在MSN上一步步的示范,順便貼出來(lái)。不過(guò),我記得好像我以前也是看別人的,不要鄙視我哦!!
他很仰慕哦,我回答:“無(wú)它,手熟耳!”
呵呵,是不是好巒顛的
SQL> archive log list;
數(shù)據(jù)庫(kù)日志模式 存檔模式
自動(dòng)存檔 啟用
存檔終點(diǎn) d:\oracle\oradata\test\archive
最早的概要日志序列 26
下一個(gè)存檔日志序列 28
當(dāng)前日志序列 28
ORACLE要在歸檔模式下
建個(gè)用戶zb
CONNECT zb/zb
建個(gè)表
CREATE TABLE family
(seq NUMBER(2),
NAME VARCHAR2(14) ,
LOC VARCHAR2(13) ) ;
INSERT INTO family VALUES
(1,'周斌','爸爸');
commit;
SQL> select * from family;
SEQ NAME LOC
---------- -------------- -------------
1 周斌 爸爸
做備份恢復(fù)時(shí),把undo改小一點(diǎn)
SQL>CREATE UNDO TABLESPACE undo1
DATAFILE 'D:\oracle\oradata\test\undo01.dbf'
SIZE 6M AUTOEXTEND ON;
SQL>ALTER SYSTEM SET UNDO_TABLESPACE=UNDO1;
SQL>DROP TABLESPACE UNDOTBS1;
commit
shutdown immediate;
冷備哦
startup;
con sys as sysdba
alter system switch logfile;
產(chǎn)生日志
INSERT INTO zb.family VALUES
(2,'楊','媽媽');
commit;
alter system switch logfile;
INSERT INTO zb.family VALUES
(3,'陽(yáng)','兒子');
SQL> select * from zb.family;
SEQ NAME LOC
---------- -------------- -------------
1 周斌 爸爸
2 楊 媽媽
3 陽(yáng) 兒子
SQL> shutdown abort
3) 此時(shí),把undo破壞
在‘服務(wù)‘中,將OracleServicetest停止
刪除(OS)undo01文件
4) 在‘服務(wù)‘中,將OracleServicetest啟動(dòng)
看警告日志D:\oracle\admin\a00215\bdump\alert_test.log,
Errors in file d:\oracle\admin\test\bdump\test_dbw0_5764.trc:
ORA-01157: cannot identify/lock data file 19 - see DBWR trace file
ORA-01110: data file 19: 'D:\ORACLE\ORADATA\TEST\UNDO01.DBF'
ORA-27041: unable to open file
OSD-04002: 無(wú)法打開(kāi)文件
O/S-Error: (OS 2) 系統(tǒng)找不到指定的文件。
6) 恢復(fù):
SQL> SHUTDOWN ABORT
將備份的undo01.dbf copy回去
SQL> STARTUP MOUNT
SQL> recover database(或者recover datafile 19//或者 recover'D:\ORACLE\ORADATA\test\UNDO01.DBF')
SQL> alter database open;
數(shù)據(jù)庫(kù)已更改。
SQL> select * from zb.family;
SEQ NAME LOC
---------- -------------- -------------
1 周斌 爸爸
2 楊 媽媽
OK
如果在INSERT后COMMIT,則數(shù)據(jù)不會(huì)丟失
SQL> select * from zb.family;
SEQ NAME LOC
---------- -------------- -------------
1 周斌 爸爸
2楊 媽媽
3 陽(yáng) 兒子
數(shù)據(jù)文件一樣。
數(shù)據(jù)文件的丟失和損壞可以恢復(fù)到COMMIT的狀態(tài)
posted on 2005-08-30 21:30 周斌 閱讀(1920) 評(píng)論(0) 編輯 收藏 所屬分類: ORACLE