Oracle切换日志文件组
日志文件组是循环使用的,当一组日志文件被写满时,Oracle系统自动的切换到下一组日志文件。在需要的时候,数据库管理员也可以手动的切换到其他的日志文件组。切换日志文件组需要使用如下的语句:
alter system switch logfile;
清空日志文件组
如果日志文件组中的日志文件受损,将导致数据库无法将受损的日志文件进行归档,这会最终导致数据库停止运行。此时,在不关闭数据库的情况下,可以选择清空日志文件组中的内容。
清空日志文件组的语法如下:
alter database clear logfile group group_number;
注意:
被清空的日志文件组不能处于current状态,也就是说不能清空数据库当前正在使用的日志文件组。
当数据库中只有两个日志文件组时,不能清空日志文件组。
具体的操作如下:
SQL> select group#,status from v$log; //查看日志文件住的状态
GROUP# STATUS
---------- ----------------
1 ACTIVE --活动窗台
2 INACTIVE --非活动状态
3 INACTIVE
4 CURRENT --当前数据库正在使用的日志文件组
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;