Oracle 联机重做日志文件(online log file)
2014-11-08 08:42
357 查看
介绍
文件位置
文件状态/切换
查看状态:SQL> SELECT * FROM v$log;
日志切换:alter system switch logfile :不等待归档完成就switch logfile。如果database尚未开启archive log
mode。那用这个切换是毋庸置疑了。另外,也是对单实例database和RAC模式下当前实例执行日志切换。 alter system archive log current:需要等待归档完成才switch logfile。会对中所有实例执行日志切换。
在日志切换时对于unused组将优先作为下一组切换对象
SEQUENCE: 对应的序列号,重做日志组写满了或者是通过手工switch logfile后都是会切换的(切换后的日志组的log sequence number为前一个日志组加一,当使用reset logs打开数据库时,则log sequence number重置为1)。
FIRST_CHANGE#:这里就是最小的SCN号了,这个是给实例恢复使用的。
GROUP#:组号
MEMBERS :成员数
STATUS:
UNUSED:从未对该联机日志写入任何内容,一般为新增加联机日志文件或是使用resetlog后的状态
CURRENT:当前重做日志文件,表示该重做日志文件为活动状态,能够被打开和关闭
ACTIVE:处于活动状态,不属于当前日志,崩溃恢复需要该状态,可用于块恢复,可能归档,也可能未归档
CLEARING:表示在执行alter database clear logfile命令后正将该日志重建为一个空日志,重建后状态变为unused
CLEARING_CURRENT:当前日志处于关闭线程的清除状态。如日志某些故障或写入新日志标头时发生I/O错误
INACTIVE:实例恢复不在需要联机重做文件日志组,可能归档也可能未归档
增加日志文件
SQL> ALTER DATABASE ADD LOGFILE MEMBER
'D:\oracle\product\10.2.0\oradata\MyOracle01\MyOracle\redo1.log' TO GROUP 1;
将日志文件redo1.log增加到日志组1。
删除日志文件
不能删除组内的唯一一个成员
不能删除处于active 和current 状态组内的成员
删除处于active 和current 状态组内的成员,应使用日志切换使其处于INACTIVE状态后再删除
对于组内如果一个成员为NULL 值,一个为INVALID,且组处入INACTIVE,仅能删除INVALID状态成员
删除日志成员,物理文件并没有真正删除,需要手动删除
删除日志文件后,控制文件被更新
对于处于归档模式下的数据库,删除成员时确保日志已被归档,查看v$log视图获得归档信息
ALTER DATABASE DROP LOGFILE MEMBER '地址'
SQL> ALTER DATABASE DROP LOGFILE MEMBER
'D:\oracle\product\10.2.0\oradata\MyOracle01\MyOracle\redo1.log'
第 1 行出现错误:
ORA-01609: 日志 1 是线程 1 的当前日志 - 无法删除成员
ORA-00312: 联机日志 1 线程 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\MYORACLE01\MYORACLE\REDO01.LOG'
ORA-00312: 联机日志 1 线程 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\MYORACLE01\MYORACLE\REDO1.LOG'
ALTER SYSTEM SWITCH LOGFILE; ---切换工作组,再次执行上面命令成功删除。
增加日志文件组
SQL> alter database add logfile group 4 'D:\oracle\product\10.2.0\oradata\MyOracle01\MyOracle\redo04.log' size 100M;
新增日志组4,成员为redo04
删除日志文件组
只有当状态为inactvie时方可删除
SQL>ALTER DATABASE DROP LOGFILE GROUP 4;
文件位置
文件状态/切换
查看状态:SQL> SELECT * FROM v$log;
日志切换:alter system switch logfile :不等待归档完成就switch logfile。如果database尚未开启archive log
mode。那用这个切换是毋庸置疑了。另外,也是对单实例database和RAC模式下当前实例执行日志切换。 alter system archive log current:需要等待归档完成才switch logfile。会对中所有实例执行日志切换。
在日志切换时对于unused组将优先作为下一组切换对象
SEQUENCE: 对应的序列号,重做日志组写满了或者是通过手工switch logfile后都是会切换的(切换后的日志组的log sequence number为前一个日志组加一,当使用reset logs打开数据库时,则log sequence number重置为1)。
FIRST_CHANGE#:这里就是最小的SCN号了,这个是给实例恢复使用的。
GROUP#:组号
MEMBERS :成员数
STATUS:
UNUSED:从未对该联机日志写入任何内容,一般为新增加联机日志文件或是使用resetlog后的状态
CURRENT:当前重做日志文件,表示该重做日志文件为活动状态,能够被打开和关闭
ACTIVE:处于活动状态,不属于当前日志,崩溃恢复需要该状态,可用于块恢复,可能归档,也可能未归档
CLEARING:表示在执行alter database clear logfile命令后正将该日志重建为一个空日志,重建后状态变为unused
CLEARING_CURRENT:当前日志处于关闭线程的清除状态。如日志某些故障或写入新日志标头时发生I/O错误
INACTIVE:实例恢复不在需要联机重做文件日志组,可能归档也可能未归档
增加日志文件
SQL> ALTER DATABASE ADD LOGFILE MEMBER
'D:\oracle\product\10.2.0\oradata\MyOracle01\MyOracle\redo1.log' TO GROUP 1;
将日志文件redo1.log增加到日志组1。
删除日志文件
不能删除组内的唯一一个成员
不能删除处于active 和current 状态组内的成员
删除处于active 和current 状态组内的成员,应使用日志切换使其处于INACTIVE状态后再删除
对于组内如果一个成员为NULL 值,一个为INVALID,且组处入INACTIVE,仅能删除INVALID状态成员
删除日志成员,物理文件并没有真正删除,需要手动删除
删除日志文件后,控制文件被更新
对于处于归档模式下的数据库,删除成员时确保日志已被归档,查看v$log视图获得归档信息
ALTER DATABASE DROP LOGFILE MEMBER '地址'
SQL> ALTER DATABASE DROP LOGFILE MEMBER
'D:\oracle\product\10.2.0\oradata\MyOracle01\MyOracle\redo1.log'
第 1 行出现错误:
ORA-01609: 日志 1 是线程 1 的当前日志 - 无法删除成员
ORA-00312: 联机日志 1 线程 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\MYORACLE01\MYORACLE\REDO01.LOG'
ORA-00312: 联机日志 1 线程 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\MYORACLE01\MYORACLE\REDO1.LOG'
ALTER SYSTEM SWITCH LOGFILE; ---切换工作组,再次执行上面命令成功删除。
增加日志文件组
SQL> alter database add logfile group 4 'D:\oracle\product\10.2.0\oradata\MyOracle01\MyOracle\redo04.log' size 100M;
新增日志组4,成员为redo04
删除日志文件组
只有当状态为inactvie时方可删除
SQL>ALTER DATABASE DROP LOGFILE GROUP 4;
相关文章推荐
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE) .
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)
- Oracle 联机重做日志文件(ONLINE LOG FILE)