您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

Oracle中的重做日志

2025/5/16 8:34:23发布35次查看
重做日志按照有序循环的方式被使用,即当一组日志文件被填满后,循环覆盖下一组日志文件,不断循环。此时称为日志切换。检查点操
一个重做日志组可以包括一个或多个日志成员,这多个成员应该放再不同的磁盘上,作为磁盘日志镜像,同一组的成员的内容是一样的,如果没有多个磁盘,没有必要为重做日志组建立多个日志成员。当一组都写满时开始归档,使用下一日志组,当日志组都写满又轮回到第一日志组时,如果第一日志组归档完毕就覆盖它,若没有就只能使用日志缓冲区等待归档完毕之后才能使用它。
一、重做日志的运行流程:
重做日志按照有序循环的方式被使用,,即当一组日志文件被填满后,循环覆盖下一组日志文件,不断循环。此时称为日志切换。检查点操作也在此时发生,检查点操作是用来实现同步的,它会写数据文件的头信息、控制文件。在归档模式下,当一组日志文件被填满后,arch(归档写进程)将这组复制到归档日志文件中。(在arch正在写的重做日志文件lgwr是不可以写的)
1、重做日志文件的定稿是依靠lgwr后台进程
2、.lgwr正在写的重做日志组称为:当前重做日志组。
3、重做日志文件------联机日志文件;归档日志文件------脱机日志文件
二、查询重做日志组:
1、日志组:
select group#, sequence#, members, bytes, status, archived from v$log;
status列中各值的意义:
current:当前组。
inactive:实例恢复已不需要这组日志了
activie:这组日志是活动的,但非当前组。例如正在归档。
unused:此组从未被写过。是日志刚被添加到db中的状态。
2、日志文件:
select * from v$logfile;
status列中各值的含义:
空白:此文件正在使用。
stale:该文件内容是不完全的。
invalid:该文件不可以被访问。例如刚建立
deleted:该文件已不再有用。
三、创建与删除重做日志文件组:
1、创建2个新的日志组
sql> alter database add logfile group 4('/oracle/oradata/orcl/redo04.rdo') size 10m;
sql> alter database add logfile group 5('/oracle/oradata/orcl/redo05.rdo') size 10m;
2、切换当前日志到新的日志组
alter system switch logfile;
alter system switch logfile;
3、删除旧的日志组
alter database drop logfile group 1;
alter database drop logfile group 2;
alter database drop logfile group 3;
4、操作系统下删除原日志组1、2、3中的文件
rm /oracle/oradata/orcl/redo01.rdo
rm /oracle/oradata/orcl/redo01.rdo
rm /oracle/oradata/orcl/redo01.rdo
5、重建日志组1、2、3
alter database add logfile group 1('/oracle/oradata/orcl/redo01.rdo') size 10m;
alter database add logfile group 2('/oracle/oradata/orcl/redo02.rdo') size 10m;
alter database add logfile group 3('/oracle/oradata/orcl/redo03.rdo') size 10m;
6、切换日志组
alter system switch logfile;
alter system switch logfile;
alter system switch logfile;
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product