li
  当前位置:主页 > 性能优化 > 文章内容
li
oracle性能调优:管理oracle日志之调整归档
来源: www.ixdba.net  作者: IXDBA.NET官方    时间:2008-05-01   阅读:13  

调整归档


· 归档进程用来将在线日志文件的内容复制到归档目录,归档日志文件用于媒体失败或用户错误时执行恢复;归档机制是备份与恢复的重要组成部分,也是IO性能问题的一个重要来源;
· 测量归档的性能(归档目录空间不足,归档进程太慢)
Ø 当归档目录所在磁盘没空间时,整个系统会被挂住,系统写一条出错信息进报警日志,描述类似于:ORA-16038 log x sequence# y cannot be archived; 这时管理员可以手工临时改变归档目录(Alter system archive log all to …)或者移出部分归档以增加归档目录所在磁盘的可用空间;
Ø 在归档模式下,日志切换成功前,LGWR不仅可能要等待即将要被重写的日志文件上的检查点的完成,还可能要等待针对这个文件的归档的完成,后面这个等待事件可以通过下面的语句查询得到:
Select n.Name, Se.Total_Waits, Se.Average_Wait
IXDBA.NET技术社区
From V$system_Event Se, V$event_Name n
Where n.Name = 'log file switch (archiving needed)'
And Se.Event(+) = n.Name;
· 改进归档的性能
Ø 当确定归档是一个性能瓶颈时,可以考虑用下面的方法来处理(加多日志组,加大日志文件,选择多个归档目标,启动更多的归档进程);
Ø 加多日志组可以减少LGWR在日志切换时对归档的等待,在一般的OLTP系统中,5~20个日志组是比较合适的;
Ø 加大日志文件也能达到减少日志切换时LGWR对归档的等待这个目标,加大日志文件会使日志切换的间隔变得更长,这种类型的检查点间隔也变得更长,前面曾提到,Oracle推荐检查点间隔在20~30分钟为宜,为解决这个矛盾,可以通过适当设置FAST_START_MTTR_TARGET这个参数来达到这个目标;
Ø 为了减少因归档目标磁盘已满而使系统被挂起的可能性,以及使用归档日志的多个冗余备份,可以通过下面的初始参数指定多个归档目标和归档最小成功个数;
LOG_ARCHIVE_DEST 首选的归档目标
LOG_ARCHIVE_DUPLEX_DEST 第二个归档目标
LOG_ARCHIVE_DEST_n 指定最多可到十个的冗余归档目标(企业版才有,标准版中没有,和上面的参数互相排斥)
LOG_ARCHIVE_DEST_STATE_n 同上面的参数相对应,可选值有enabledefer
LOG_ARCHIVE_MIN_SUCCEED_DEST 在多个归档目标的配置下用于指定归档最小成功的个数,默认值是1,取值范围是:1-2LOG_ARCHIVE_DUPLEX_DEST生效时)或1-5LOG_ARCHIVE_DEST_n生效时);
上面的n的取值在1~10之间;
相关的视图有V$ARCHIVE_DEST, V$ARCHIVE_DEST_STATUS, V$ARCHIVED_LOG;
Ø 如果出现LGWR等待归档时,LGWR可以启动更多的ARCn进程来处理归档任务;
也可以通过更改初始参数LOG_ARCHIVE_MAX_PROCESSES(默认值为1,取值范围2~10)来指定实例启动时就开始运行的归档进程的个数(通常这个值应该等于归档目标的个数);
可以通过V$ARCHIVE_PROCESSES查看到归档进程的状态以及它正在处理的日志序号;
还可以考虑将归档放在更快的磁盘上以加快归档的处理速度,归档不能放在裸设备上;




  上一篇: 成为高效能DBA的七个必须习惯   下一篇: Oracle分区表及分区索引
li
 §相关评论  
 热点文章

·Resize datafile导致ASM Crash
·在Oracle10g RAC下新增ASM磁盘
·ORACLE SQL性能优化系列 (一)
·oracle性能调优:管理oracle日志
·oracle RAC环境中系统时钟的调
·why:Rac的心跳线不支持交叉线?
·RAC的VIP及实例依赖关系:版本O
·如何启动DataGuard的备用数据库
·系统表空间IO错误 数据损坏处理
·不幸中的万幸:遭遇ORA-00600 [
·用ORACLE的高级复制实现内外网
li
 编辑推荐
·Resize datafile导致ASM Crash
·在Oracle10g RAC下新增ASM磁盘
·ORACLE SQL性能优化系列 (一)
·oracle性能调优:管理oracle日志
·oracle RAC环境中系统时钟的调
·why:Rac的心跳线不支持交叉线?
·RAC的VIP及实例依赖关系:版本O
·如何启动DataGuard的备用数据库
·系统表空间IO错误 数据损坏处理
·不幸中的万幸:遭遇ORA-00600 [
·用ORACLE的高级复制实现内外网
li
 相关篇章
·成为高效能DBA的七个必须习惯
·oracle性能调优:管理oracle日志之...
·oracle性能调优:管理oracle日志之...
·oracle性能调优:管理oracle日志之...
·阿里巴巴的DBA成长之路
·如何选择合适的Oracle优化器
·oracle 性能调优:调整SGA之Java池...
·oracle 性能调优:调整SGA之大池的...
·oracle 性能调优:调整SGA之改进共...
·oracle 性能调优:调整SGA之测量共...
·Oracle分区表及分区索引
·在AIX环境下Oracle 9i的性能调整
·系统表空间IO错误 数据损坏处理案...
·ORA-01578: ORACLE data block c...
·如何查看和清除oracle无用的连接...
·ORA-16057: DGID from server no...
·PING[ARC0]: Heartbeat failed t...
·ORA-16025: parameter LOG_ARCHI...
·oracle dataguard常见故障解决方...
·oracle dataguard常见gap故障解决...
 
li
设为首页 | 关于我们 | 技术服务 | 收藏本站 | 网站地图 | 联系方式 | 本站友情连接