视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle数据库级dropredolog并不危险
2020-11-09 10:41:53 责编:小采
文档


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

下载本文
显示全文
专题