您的位置:首页 > 数据库 > Oracle

oracle在线日志文件分析

2013-10-29 10:52 190 查看
一、在线日志文件管理
1、在线日志文件的作用:
在线日志文件记录所有数据变化信息,利用日志文件的快速写功能提升数据库写入性能
为实例失败和介质失败提供恢复机制
2、在线日志文件的结构:
在线日志文件组成了日志组,数据库以循环方式使用日志组,再通过日志组使用日志文件
oracle数据库至少需要两组日志组才能满足循环需求
日志组内的在线日志文件叫做日志成员(日志文件)
每组内两个日志文件,组内的日志文件互为镜像关系
如果组内的每个日志文件为50M,那么这个日志组只能写50M的数据
3、在线日志文件的工作原理:
在线日志文件以日志文件组的循环方式使用
当某个日志文件写满时,LGWR将移动到下一个日志组
(此步骤为日志切换)
(同时触发检查点操作,将数据缓冲区数据写入磁盘)
(日志切换与检查点信息被写入控制文件)
4、控制在线日志文件的切换与检查点的触发:
自动执行日志切换操作
当日志组中的日志文件写满时自动切换,由LGWR完成
手动报告日志切换,用于测试使用:
altersystemswitchlogfile;
强制检查点触发,同步数据缓冲区内容到磁盘(数据文件)
由数据库自动触发,fast_start_mttr_target参数控制检查点在其规定的时间内必须执行,单位s,此参数可以修改
手动执行altersystemcheckpoint;用于测试使用
注:commit操作只同步日志缓冲区内容到日志文件,oracle只需要保证修改操作被写入到日志文件,那么此操作即为成功,而无需保证数据缓冲中内容写入到数据文件。此种机制可以提升oracle数据处理性能并保证数据不丢失。
二、在线日志组以及日志成员查看
select* fromv$log;#日志组查看
select*fromv$logfile;#日志组内的成员查看
INACTIVE状态为未使用
ACTIVE状态为正在同步
CURRENT状态为正在使用
三、添加在线日志组
alterdatabaseaddlogfilegroup4('/oracle/app/oradata/TEST/redo04.log')size50M;
四、添加在线日志组成员
alterdatabaseaddlogfilemember'/oracle/app/oradata/TEST/redo04d.log'togroup4;
五、删除日志组
alterdatabasedroplogfilegroup4;
1、不能删除当前日志组,删除日志组后不能直接删除日志组对应的日志文件,需要到操作系统上手动删除
2、如果希望删除当前日志组那么必须先进行日志切换
3、删除状态为ACTIVE的日志组必须先执行checkpoint操作
4、日志文组删除以后,必须到操作系统中将对应的日志文件手动删除

本文出自 “于雷博客” 博客,请务必保留此出处http://yulei7633.blog.51cto.com/1492756/1316623
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: