>  기사  >  데이터 베이스  >  Oracle数据库级drop redolog并不危险

Oracle数据库级drop redolog并不危险

WBOY
WBOY원래의
2016-06-07 17:31:23891검색

有些DBA害怕在生产库上做REDO LOG的删除操作,因为担心把状态为ACTIVE和ACITVE的redolog group给删除造成数据库事故。如果在Unix

有些DBA害怕在生产库上做REDO LOG的删除操作,因为担心把状态为ACTIVE和ACITVE的redolog group给删除造成数据库事故。

实际上,如果从数据库级删除状态为CURRENT和ACTIVE的redo log,是删除不掉的,,所以从数据库级删除redo log时大可以放心。

但是要注意,如果在Unix/Linux平台操作系统层直接删除(rm),Oracle是无法做检查的,如果在操作系统级直接删除了状态为CURRENT或ACTIVE的redo log则真的会酿成事故,要非常小心。

下面来在ORACLE数据库级做个删除状态为CURRENT和ACTIVE的REDOLOG测试:

1、 查看redo log的状态

SQL>

GROUP#

THREAD#

ARCHIVED

STATUS

1

1

NO

INACTIVE

2

1

NO

ACTIVE

3

1

NO

CURRENT

4

1

NO

ACTIVE

以上GROUP 3状态为CURRENT,GROUP2/GROUP4是active,现在我们来对状态为CURRENT和ACTIVE的redolog group分别做删除测试 

2、 删除状态为CURRENT的group# 3

SQL> alter database drop logfile group3;

alter database drop logfile group 3

*

ERROR at line 1:

ORA-01623: log 3 is current log forinstance litest (thread 1) - cannot drop

ORA-00312: online log 3 thread 1:'/dba/oracle/oradata/litest/redo03.log' 

3、删除状态为ACTIVE的group#2

SQL> alter database drop logfile group2;

alter database drop logfile group 2

*

ERROR at line 1:

ORA-01624: log 2 needed for crash recoveryof instance litest (thread 1)

ORA-00312: online log 2 thread 1:'/dba/oracle/oradata/litest/redo02.log' 

4、小结

(1)当删除状态为CURRENT的redolog group时,会提示为当前log,不能删除

(2)当删除状态为ACTIVE的redolog group时,会提示实例恢复需要该log,不能删除

推荐阅读:

Linux平台下Oracle删除redolog仍然正常使用的原因

Oracle 入门之管理online redolog 

RedoLog Checkpoint 和 SCN关系 

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.