楼主: phonee

关于数据库调优node1 (欢迎各位看看~~~~~)

[复制链接]
论坛徽章:
86
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20咸鸭蛋
日期:2012-05-08 10:27:19版主8段
日期:2012-05-15 15:24:112013年新春福章
日期:2013-02-25 14:51:24
11#
发表于 2003-5-9 17:17 | 只看该作者

o

刚才我给建议的时候没有看你的  statspack 报告呢  

至于 db_block_lru_latches    ,我并不确信 16  /  48  到底哪个好


如果存在你所说的这样的大量session等待的问题
那你可以尝试 调整 _spin_count  减小

默认应该是 2000

使用道具 举报

回复
论坛徽章:
60
2007年度最佳版主
日期:2008-04-03 16:46:15现任管理团队成员
日期:2011-05-07 01:45:08双黄蛋
日期:2011-06-15 17:03:34ITPUB十周年纪念徽章
日期:2011-11-01 16:19:412012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20
12#
发表于 2003-5-9 18:21 | 只看该作者
性能没有问题为什么还要调整?

如果是我,我是不会去作调整的

此外,如果要调整的话,硬件有变化,一般的你的应用怕是也要做不小的改动

使用道具 举报

回复
论坛徽章:
9
授权会员
日期:2005-10-30 17:05:33管理团队成员
日期:2011-05-07 01:45:08马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
13#
 楼主| 发表于 2003-5-9 18:52 | 只看该作者
hi fenng

确实是这样,目前数据库的一些命中率都还好
性能也能接受
我们一致也考虑尽量不做调整,问题在于这种状态持续4个月了!
只不过通信行业每月出帐后缴费高峰期业务量还是比较大的
所以相对来说CPU占用很高、而5G--6G的内存在FREE
而且业务始终是在不断增长,系统负荷也在逐步增大
所以还是要调整的 ,应用没有什么要改动的

使用道具 举报

回复
论坛徽章:
3
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34
14#
发表于 2003-5-9 21:28 | 只看该作者
Db buffer size 可以增加到4G-5G

还可以适当的调整一下SQL
确认
SELECT ACCOUNT_ID,CUSTOMER_ID,INHERIT_ID   FROM BB_SERVICE_RELAT
ION_T  WHERE USER_ID = :b1  AND IF_VALID = 1
是否用了index


SELECT NVL(SUM(FEE1 + FEE2  + FEE3  + FEE4  + FEE11  + FEE12  +
FEE13  + FEE14 ),0)   FROM BF_GATHER_FEE_T A,BF_FEE_KIND_T B  WH
ERE A.USER_ID = :b1  AND (A.FEE_DATE = :b2  OR A.FEE_DATE = :b3
) AND A.CITY_CODE = :b4  AND A.SERVICE_KIND = :b5  AND A.SPECIAL
_BILL != 1  AND B.SERVICE_KIND = :b5  AND A.FEE_KIND = B.FEE_ID
是否有问题

begin customer_service_main_proc(:trans_buffer,:buffer_len,:last
_flag,:exclusive_id,:ret_code);end;
的存储过程好象也很消耗系统资源

先看看这些吧可能是由某个程序引起的.

使用道具 举报

回复
论坛徽章:
21
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-02-13 15:11:182012新春纪念徽章
日期:2012-02-13 15:11:182012新春纪念徽章
日期:2012-02-13 15:11:182012新春纪念徽章
日期:2012-02-13 15:11:18马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:11:18
15#
发表于 2003-5-9 22:45 | 只看该作者
1.log_buffer不必增加了.增加了没有什么好处.

你们基本上没有log_buffer_space wait event.

2.share pool 也不用增加了.

你们当前poor 的使用率还没有60%

再增加你们的大小,也是没有用处的. 只要有literal sql进来,再大的share pool也不会提高命中率.

3.16G的物理内存,还是用的raw device, data buffer可以大大增加.

初步估计可以增加到8GB左右.

4.
你们的很多SQL的资源消耗很高. 调整SQL得到的性能提升是最大的. 调整Index,或者SQL的实现方法.让每个Session干活的时间短, 每个CPU在固定的CPU时间里面, 可以服务更多的session, 这样, run queue里面的等待队列就会降低.


5. 非常关键的一点,

你们的rollback率非常高.这一点一定要弄清楚,修正.数据库都是在白干活.

使用道具 举报

回复
论坛徽章:
9
授权会员
日期:2005-10-30 17:05:33管理团队成员
日期:2011-05-07 01:45:08马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14
16#
 楼主| 发表于 2003-5-9 23:00 | 只看该作者
chao_ping 你说的3,今晚可能来不及修正了,
因为操作系统参数没有调,所以当前的内存分配已经出现no enough space
只好下次调整了

4、其实index \sql 调整优化过几次,但涉及集成商、软件开发商,同时,许多表确实很大,
结构本身就比较负责,所以这个确实是关键,但却是最不利索的。

5、ROLLBACK 率非常高 ,并非表示数据库在白干活啊?
本身批量insert update  的操作比较多、数据量比较大,联机事务也很多
rollback 率高也正常啊,具体说说如何?

使用道具 举报

回复
论坛徽章:
86
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20咸鸭蛋
日期:2012-05-08 10:27:19版主8段
日期:2012-05-15 15:24:112013年新春福章
日期:2013-02-25 14:51:24
17#
发表于 2003-5-10 12:39 | 只看该作者

Rollback per transaction %: 54.84

这个是太夸张了!

检查你们的应用,肯定存在什么问题
要知道 rollback 是代价昂贵的操作!

回退率达到这么高,检查是哪里的问题,业务逻辑的出错还是应用程序的问题……

rollback 次数可以比较多,但是比率却通常应该不会高过10%的,越小越好
420936 个事务里面有  230841 个事务失败,必定有问题!!!!!!!

使用道具 举报

回复
论坛徽章:
86
ITPUB元老
日期:2005-02-28 12:57:002012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:202012新春纪念徽章
日期:2012-02-13 15:13:20咸鸭蛋
日期:2012-05-08 10:27:19版主8段
日期:2012-05-15 15:24:112013年新春福章
日期:2013-02-25 14:51:24
18#
发表于 2003-5-10 13:03 | 只看该作者

phonee

关于 shared_pool_size
实际上来讲

假如不存在 literal sql 的问题
你觉得你的所有的sql 放在一起有多大?解析后所有的占用的空间有多大?
你的所有的sql的文本有没有 20M ?

假如存在 literal sql ,并且动态生成大量的sql,没有使用 bind var
那增大内存能缓解问题么? 这个值得斟酌

可能命中率一样不高但带来 很大的CPU 的代价

在一些系统的 案例中,shared_pool_size 在接近 1G 或者超过 1G 的时候带来CPU 的严重的负担并且系统出现严重问题,实际上,一个32G RAM ,SGA > 25G  的系统中, shared_pool_size 也没有达到1G ,并且系统仍然存在 literal  sql 的问题

所以 shared_pool_size 并不能跟 RAM 成比例的增长
当然具体 问题具体分析
有些系统本身确实需要很大的 内存,那时另外一回事

造成这种问题的根源在于 程序员 对 bind var 和 sql 优化认识不足,
系统开发之前 的设计人员也没有这个意识
没有评估系统的瓶颈,准确的说是 没有经验或者没有吃过这个亏
所以任由开发人员自行处理代码

使用道具 举报

回复
论坛徽章:
16
咸鸭蛋
日期:2011-09-06 18:06:46三菱
日期:2013-08-19 19:29:14
19#
发表于 2003-5-10 15:32 | 只看该作者

一点建议

从TOP EVENTS来看,全表扫描过多了,索引扫描争用也过多,应该增加DB_BLOCK_BUFFER。
其实重要还是应该调整你的应用。

使用道具 举报

回复
论坛徽章:
69
奥运会纪念徽章:射击
日期:2016-09-06 23:08:25马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:112013年新春福章
日期:2013-02-25 14:51:24复活蛋
日期:2013-02-18 11:25:01迷宫蛋
日期:2012-12-25 17:17:41复活蛋
日期:2012-12-21 17:41:38奥运会纪念徽章:沙滩排球
日期:2012-10-27 14:59:31ITPUB 11周年纪念徽章
日期:2012-10-09 18:03:32
20#
发表于 2003-5-10 22:37 | 只看该作者

Re: 一点建议

最初由 idler 发布
[B]从TOP EVENTS来看,全表扫描过多了,索引扫描争用也过多,应该增加DB_BLOCK_BUFFER。
其实重要还是应该调整你的应用。 [/B]


要电信去调整一个应用谈何容易啊,涉及面太广,有些应用还是不断的扩充功能形成的,早期的软件开发商也找不到了,去调整恐怕还不如重新搞一个来得简单。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表