cangos

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

今天发现一台服务器上的数据库响应速度很慢

问题描述

1、应用连接数据异常缓慢,包括客户端使用plsql连接;
2、数据库主机cpu占用率居高不下,IO写入居高不下

问题研究

查看alter日志发现大量的

Thread 1 cannot allocate new log, sequence xxxx  

Checkpoint not complete

表明redo文件组太少,导致LGWR进程在切换到新redo file时,等待旧数据写入(dbwn)数据文件;

解决办法

1、增加redo file 组;
Alert database add logfile group 4(‘/u01/app/oracle/oradata/oracl/redo04.log’) size100M;
Alert database add logfile group 5(‘/u01/app/oracle/oradata/oracl/redo05.log’) size100M;
Alert database add logfile group 6(‘/u01/app/oracle/oradata/oracl/redo06.log’) size100M;
根据需要可添加更多的redo文件组。

2、加快回滚速度

提高并行回滚进程的数量,设置为HIGH时回滚进程=4*cpu数。

ALTER SYSTEM SET FAST_START_PARALLEL_ROLLBACK=HIGH

 

相关链接:

http://hi.baidu.com/dba_hui/blog/item/92a630e90b18d83b2cf53470.html

http://sysadmin.blog.51cto.com/83876/203502

posted on 2011-12-16 15:34  cangos  阅读(3100)  评论(0编辑  收藏  举报