【REDO】刪除REDO LOG重做日誌組後需要手工刪除對應的日誌檔案
為保證重新建立的日誌組成員可以成功建立,我們在刪除日誌組後需要手工刪除對應的日誌檔案。
1.檢視資料庫當前REDO LOG日誌相關資訊
1)檢視日誌組資訊
sys@ora10g> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- --- -------- ------------- -----------------
1 1 0 52428800 2 YES UNUSED 0
2 1 0 52428800 1 YES UNUSED 0
3 1 0 524288000 1 YES UNUSED 0
4 1 1 524288000 2 NO CURRENT 6494848 20111019 22:32:01
5 1 0 524288000 2 YES UNUSED 0
2)檢視日誌檔案資訊
sys@ora10g> col member for a50
sys@ora10g> select * from v$logfile;
GROUP# STATUS TYPE MEMBER IS_
---------- ------- -------- ---------------------------------------------- ---
1 ONLINE /oracle/ora10gR2/oradata/ora10g/redo01.log NO
2 ONLINE /oracle/ora10gR2/oradata/ora10g/redo02.log NO
1 ONLINE /oracle/ora10gR2/oradata/ora10g/redo01_b.log NO
3 ONLINE /oracle/ora10gR2/oradata/ora10g/redo03_a.log NO
4 ONLINE /oracle/ora10gR2/oradata/ora10g/redo04_a.log NO
4 ONLINE /oracle/ora10gR2/oradata/ora10g/redo04_b.log NO
5 ONLINE /oracle/ora10gR2/oradata/ora10g/redo05_a.log NO
5 ONLINE /oracle/ora10gR2/oradata/ora10g/redo05_b.log NO
8 rows selected.
2.刪除日誌組
這裡以刪除第5組非活動日誌組為例作為演示。
sys@ora10g> alter database drop logfile group 5;
Database altered.
3.驗證此時日誌組對應的日誌檔案是否被刪除
sys@ora10g> !ls -l /oracle/ora10gR2/oradata/ora10g/redo05_a.log
-rw-r----- 1 oracle oinstall 524288512 Oct 19 22:33 /oracle/ora10gR2/oradata/ora10g/redo05_a.log
sys@ora10g> !ls -l /oracle/ora10gR2/oradata/ora10g/redo05_b.log
-rw-r----- 1 oracle oinstall 524288512 Oct 19 22:33 /oracle/ora10gR2/oradata/ora10g/redo05_b.log
顯然,此時作業系統上與第五組日誌相關的日誌檔案並沒有被刪除。此時需要我們手工完成清理動作,否則在下次建立同樣的日誌檔案時會報錯,提示檔案已經存在,不允許建立,具體報錯資訊如下所示。
sys@ora10g> alter database add logfile group 5 ('/oracle/ora10gR2/oradata/ora10g/redo05_a.log','/oracle/ora10gR2/oradata/ora10g/redo05_b.log') size 50M;
alter database add logfile group 5 ('/oracle/ora10gR2/oradata/ora10g/redo05_a.log','/oracle/ora10gR2/oradata/ora10g/redo05_b.log') size 50M
*
ERROR at line 1:
ORA-00301: error in adding log file '/oracle/ora10gR2/oradata/ora10g/redo05_a.log' - file cannot be created
ORA-27038: created file already exists
Additional information: 1
4.小結
預設情況下當刪除日誌檔案組後Oracle不會將對應的日誌成員檔案在作業系統上刪除,此時我們需要在作業系統上使用rm進行處理,rm是危險的,當使用rm進行刪除時,一定要小心。為了防止出現此類問題的發生,我們可以考慮使用OMF或者ASM方式管理資料庫的檔案。
Good luck.
secooler
11.10.20
-- The End --
1.檢視資料庫當前REDO LOG日誌相關資訊
1)檢視日誌組資訊
sys@ora10g> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- --- -------- ------------- -----------------
1 1 0 52428800 2 YES UNUSED 0
2 1 0 52428800 1 YES UNUSED 0
3 1 0 524288000 1 YES UNUSED 0
4 1 1 524288000 2 NO CURRENT 6494848 20111019 22:32:01
5 1 0 524288000 2 YES UNUSED 0
2)檢視日誌檔案資訊
sys@ora10g> col member for a50
sys@ora10g> select * from v$logfile;
GROUP# STATUS TYPE MEMBER IS_
---------- ------- -------- ---------------------------------------------- ---
1 ONLINE /oracle/ora10gR2/oradata/ora10g/redo01.log NO
2 ONLINE /oracle/ora10gR2/oradata/ora10g/redo02.log NO
1 ONLINE /oracle/ora10gR2/oradata/ora10g/redo01_b.log NO
3 ONLINE /oracle/ora10gR2/oradata/ora10g/redo03_a.log NO
4 ONLINE /oracle/ora10gR2/oradata/ora10g/redo04_a.log NO
4 ONLINE /oracle/ora10gR2/oradata/ora10g/redo04_b.log NO
5 ONLINE /oracle/ora10gR2/oradata/ora10g/redo05_a.log NO
5 ONLINE /oracle/ora10gR2/oradata/ora10g/redo05_b.log NO
8 rows selected.
2.刪除日誌組
這裡以刪除第5組非活動日誌組為例作為演示。
sys@ora10g> alter database drop logfile group 5;
Database altered.
3.驗證此時日誌組對應的日誌檔案是否被刪除
sys@ora10g> !ls -l /oracle/ora10gR2/oradata/ora10g/redo05_a.log
-rw-r----- 1 oracle oinstall 524288512 Oct 19 22:33 /oracle/ora10gR2/oradata/ora10g/redo05_a.log
sys@ora10g> !ls -l /oracle/ora10gR2/oradata/ora10g/redo05_b.log
-rw-r----- 1 oracle oinstall 524288512 Oct 19 22:33 /oracle/ora10gR2/oradata/ora10g/redo05_b.log
顯然,此時作業系統上與第五組日誌相關的日誌檔案並沒有被刪除。此時需要我們手工完成清理動作,否則在下次建立同樣的日誌檔案時會報錯,提示檔案已經存在,不允許建立,具體報錯資訊如下所示。
sys@ora10g> alter database add logfile group 5 ('/oracle/ora10gR2/oradata/ora10g/redo05_a.log','/oracle/ora10gR2/oradata/ora10g/redo05_b.log') size 50M;
alter database add logfile group 5 ('/oracle/ora10gR2/oradata/ora10g/redo05_a.log','/oracle/ora10gR2/oradata/ora10g/redo05_b.log') size 50M
*
ERROR at line 1:
ORA-00301: error in adding log file '/oracle/ora10gR2/oradata/ora10g/redo05_a.log' - file cannot be created
ORA-27038: created file already exists
Additional information: 1
4.小結
預設情況下當刪除日誌檔案組後Oracle不會將對應的日誌成員檔案在作業系統上刪除,此時我們需要在作業系統上使用rm進行處理,rm是危險的,當使用rm進行刪除時,一定要小心。為了防止出現此類問題的發生,我們可以考慮使用OMF或者ASM方式管理資料庫的檔案。
Good luck.
secooler
11.10.20
-- The End --
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/519536/viewspace-709441/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle11g redo log 建立、新增、刪除(重做日誌組,重做日誌檔案)Oracle
- 【REDO】刪除聯機重做日誌檔案組的注意事項
- 【REDO】刪除聯機重做日誌檔案組成員的注意事項
- 【REDO】重做日誌檔案(redo log files)管理(增,刪,改,查,切)
- 10G DATAGUARD增加REDO日誌組、刪除日誌組、刪除日誌成員實驗
- oracle redo 日誌刪除後的恢復Oracle Redo
- MySQL重做日誌(redo log)MySql
- 刪除日誌檔案組與日誌檔案成員
- redo重做日誌管理
- 手工rm刪除歸檔日誌對備份歸檔日誌的影響
- 新增、刪除日誌檔案
- 刪除日誌檔案組或成員
- 刪除重做日誌檔案組的四大限制條件
- 刪除歸檔日誌檔案
- 重做日誌(redo log)相關總結
- 線上重建redo log日誌組
- 刪除redo所有日誌,資料庫無法啟動資料庫
- 一個刪除重做日誌檔案的參考指令碼指令碼
- mysql binlog日誌刪除MySql
- 刪除日誌組成員
- 歸檔日誌的刪除
- Redo log檔案被刪除恢復
- pg 資料庫日誌檔案誤刪除後的應對方案資料庫
- oracle刪除歸檔日誌Oracle
- Oracle歸檔日誌刪除Oracle
- oracle刪除日誌Oracle
- 達夢資料庫:誤刪除 undo/redo 日誌怎麼辦資料庫
- 刪除data guard歸檔日誌
- 手動刪除歸檔日誌
- 作用RMAN 刪除歸檔日誌
- SQL Server 2005 日誌刪除和日誌檔案限制SQLServer
- redo log日誌挖掘(二)
- redo log日誌挖掘(一)
- Archived Redo Logs歸檔重做日誌介紹及其優點Hive
- MySQL 正確刪除 binlog 日誌MySql
- 當ORACLE歸檔日誌滿後如何正確刪除歸檔日誌Oracle
- data guard中增加與刪除主備資料庫中的聯機重做日誌與備重做日誌檔案資料庫
- elasticsearch日誌刪除命令Elasticsearch