ORACLE数据库部分功能试运行结果分析和调优记录

 一、ORACLE OEM分析

1、Log file parallel write参数分析

2、5分钟左右的运行结果

3、运行状态

4、会话:189

5、等待会话数:system io

6、commit分析

7、SQL语句分析

二、参数分析

1、logfile sync(日志文件同步)

(1)log file sync(日志文件同步)等待事件具有一个参数:buffer#。

在OracleDatabase 10g中,这种等待事件位于Commit等待下面。当处理log file sync等待事件时,注意下面的思想:

  •     log file sync 等待时间和事务中指(提交或回滚)相关
  •     当进程在log file sync事件上花费大量时间时,这通常表明过多的提交或短事务。即log file sync是用户commit/rollback触发的。

(2)常见的原因、诊断和动作

      Oracle 在SGA中的日志缓冲区中记录事务和块的改变,这是成为生理日志(physiological logging)的方法。通过以各种时间进度将内容写入到日志文件,LGWR进程负责在日志缓冲区中留出空间。

(3)触发LGWR进程的条件有:

      ①用户提交

      ②有1/3重做日志缓冲区未被写入磁盘

      ③有大于1M的重做日志缓冲区未被写入磁盘

      ④ 3秒超时

      ⑤DBWR 需要写入的数据的SCN大于LGWR记录的SCN,DBWR 触发LGWR写入。

(4)触发DBWR进程的条件有:

      ①DBWR超时,大约3秒

      ②系统中没有多余的空缓冲区来存放数据

      ③CKPT 进程触发DBWR

(5)高log file sync等待事件的3个主要原因:

     ①.高提交频率

            解决方法是简单的消除不必要的提交,事务是工作单元。工作单元应该是全部成功或全部失败。

       ②.缓慢的I/O子系统

           较高的IO吞吐良可以改善logfile sync和log file parallel write事件的平均等待时间。频繁的提交会弄乱数据库布局和IO子系统。解决办法是将日志文件放裸设备上或绑定在RAID 0或RAID 0+1中,而不是绑定在RAID 5中。

       ③.过大的日志缓冲区

           过大的日志缓冲区也可能延长log filesync等待。大型的日志缓冲区减少后台写入的数量,允许LGWR变得懒惰,并导致更多的重做条目堆积在日志缓冲区中。同时可以调整参数_LOG_IO_SIZE参数,其默认值是LOG_BUFFER的1/3或1MB,取两者之中较小的值。换句话说,你可以具有较大的日志缓冲区,但较小的_LOG_IO_SIZE将增加后台写入,从而减少log file sync的等待时间。

2、Log file parallel write 等待事件

        log file parallel write 事件是LGWR进程专属的等待事件(即由LGWR进程引起的等待时间),发生在LGWR将log_buffer中的重做日志信息写入联机重做日志文件组的成员文件,LGWR在该事件上等待该写入过程的完成。该事件等待时间过长,说明日志文件所在磁盘缓慢或存在争用。应该从两个方面入手解决:

(1)将重做日志文件组放置到高速I/O磁盘上(不要将日志组成员文件放置IO不一样的磁盘上)。不要将重做日志放在RAID5的磁盘上。

(2)尽可能的降低重做数量:

—尽可能使用Nologging选项,例如索引的重建、重组,包括create table...as select...操作。

—热备份可能创建大量的重做信息,所以热备份应该在非高峰时间运行,并且尽可能将表空间排除在热备份模式外

—应用程序的commit的频率小一些也能有一些改善。

一般情况下log file parallel write和log file sync都是同时出现的。

 

图片部分为原创,源于开发的数据库部分功能的运行结果。文字转载于网络,具体出处不明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值