清空日志文件组
如果日志文件组中的日志文件受损,将导致数据库无法将受损的日志文件进行归档,这会最终导致数据库停止运行。此时,在不关闭数据库的情况下,可以选择清空日志文件组中的内容。
清空日志文件组的语法如下:
alter database clear logfile group group_number;
注意:
被清空的日志文件组不能处于current状态,也就是说不能清空数据库当前正在使用的日志文件组。
当数据库中只有两个日志文件组时,不能清空日志文件组。
具体的操作如下:
SQL> select group#,status from v$log;? ? //查看日志文件住的状态
? ? GROUP# STATUS
---------- ----------------
? ? ? ? 1 ACTIVE? ? ? ? ? ? ? ? ? --活动窗台
? ? ? ? 2 INACTIVE? ? ? ? ? ? ? ? --非活动状态
? ? ? ? 3 INACTIVE
SQL> alter system switch logfile;
系统已更改。
由以下可以看出此时的数据库文件组的已经被更改。
SQL> select group#,status from v$log;
? ? GROUP# STATUS
---------- ----------------
? ? ? ? 1 INACTIVE
? ? ? ? 2 CURRENT
? ? ? ? 3 INACTIVE
? ? ? ? 4 ACTIVE
清空日志文件组,对文件进行初始化操作,文件并没被删除,知识内容被清空
Alter database clear logfile group 4;