Heim  >  Artikel  >  Datenbank  >  Oracle数据库级drop redolog并不危险

Oracle数据库级drop redolog并不危险

WBOY
WBOYOriginal
2016-06-07 17:31:23892Durchsuche

有些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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn