作者oscaroec (OEC)
看板Database
标题Re: [讨论] oracle 效能问题
时间Sat Jun 3 12:03:26 2017
※ 引述《oscaroec (OEC)》之铭言:
: 最近在进行灾难演练
: 但是oracle资料库的部分有个大问题
: 就是用了更好spec的硬体
: 更多的ram 更多core的CPU 较多的SGA & PGA
: 但是AP在load资料的速度反而更慢(差距几分钟以上)
: 原本DB是在8GB ram的VM(CentOS 5.5)上
: 新的我给了16GB(CentOS6.8 or Ubuntu 16)
: 前端搭配的是同个tomcat (code版本也都一样)
: 请问可能是哪个环节出错了吗?
: 请大家不吝指教 谢谢
後续针对版友建议做了一些处理
过程中也有一些心得
一起和大家分享
1.运用ORACLE内建的awrrpt.sql可以产生详细的报表
须注意他是以每一个小时(整点)为一个单位
使用方法:
a.切换到该目录,确认有无该sql档
$cd $ORACLE_HOME/rdbms/admin
b.进入SQL
SQL>@awrrpt.sql
c.後续照着提示做,就会有一份精美的html报表
2.透过报表了解SGA, I/O or network wait等数据都正常
仅CPU loading高
把重点放在SQL statement的调整
3.虽然用virtual index有看到query速度改善
但实际建上去并不是这麽一回事
google了一下有几个原因
资料分布极端、statement内有一些导致index失效的语法
4.用hint的方式下参数强迫ORACLE用较多的CPU core去跑
在execute plan里有看到明显改善
目前还就研究相关设定
5.因为是用exp/imp方式 可能参数没下好 analyzed date没有更新
这个没有直接解决我的问题
但是应该是重要且必须要做的事情
结果: 目前还在努力中,也认命的乖乖开始将awrrpt提到的top 5 busy SQL改写
以上简单回应目前的处理状况
如果已知用火 还请各位高抬贵手
笑笑就好 (不然还要扫玻璃 会很麻烦...
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 120.126.47.13
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1496462611.A.4AA.html
1F:推 chefou: 感谢分享,4跟5的部分,要注意统计资讯的收集 06/03 13:20
2F:推 LINGZ: 推分享 06/04 22:39
3F:→ kobedisel: 第四点 不建议,除非该table 为hash partition, 且经过 06/06 22:17
4F:→ kobedisel: 压测,否则prod使用parallel通常效果会更差 90%以上(p 06/06 22:17
5F:→ kobedisel: arallel是一把刀),单一测试效果可能好,多人使用时就 06/06 22:17
6F:→ kobedisel: 会resource消耗更凶而得到更差的结果。 06/06 22:17
7F:→ kobedisel: 尤其在parallel时的execution plan 有多个P->S时 效果 06/06 22:20
8F:→ kobedisel: 可能跟想像的相反。 06/06 22:20
9F:→ oscaroec: 感谢提醒~ 06/07 13:04