翻手为云覆手雨,天地由我一手掌。逍遥不认仙与魔,总归由我性张扬。

数据库性能管理以及优化

上一篇 / 下一篇  2009-04-15 18:08:36 / 个人分类:优化技术

51Testing软件测试网 R"` R2D+X6R"g#] _+`

             数据库性能管理以及优化   51Testing软件测试网nmD S@M

,HhK*~Yo1p0 备注:如果想转本博客请注明连接点谢谢     

"z;R&i$}0Z/yXCY7q051Testing软件测试网$qtm5h w:J

    工作了这几年大部分时间都是做xx银行项目的性能测试以及优化,数据库性能优化比较多,应用服务性能的优化比较少51Testing软件测试网B1d-C(v#Q"[{2W(wH

)R"^Fyn'v v j0毕竟牵涉到的业务逻辑比较麻烦更主要是JAVA开发语言不是很了解,只是帮忙优化过一两次CPU使用率高、内存泄漏问题(纯属意外开发人员没办法优化情况下让我死马当活马医竟然医好了,从此开发人员对我们测试人员的态度改变了很多)。
%E;`1M9j fDX[e0  
H y_B-BQ0    个人觉得数据库性能比较好优化透明性的而且是通用的,无论是DB2还是ORACLE 优化方式都很相似。51Testing软件测试网9Y%@.K&@C

51Testing软件测试网2U~;~8x)R%L M U

做了xx银行几个项目的性能测试以及优化大部分都是对数据库性能的诊断优化,因此对数据库性能管理也有了一丁点的了解,刚好今
yiMf8l0j0天看到一个数据库论坛的版主提到如何管理好数据库性能,个人提了些看法 o(∩_∩)o...哈哈51Testing软件测试网YI$e V"Kb

51Testing软件测试网'~HHvTMW

一个系统上线后的性能的稳定,在设计数据库的早期阶段就应该把性能因素考虑进来,这一点非常重要特别是金融、电信行业的系统51Testing软件测试网8[:^6G-\*e2q|

3uG6K.{,B5Z ]2y7^.O0,不要在应用程序开发项目的后期阶段才开心整性能,这样非常危险,很不科学。

P1c/f5OU051Testing软件测试网K1W5u(kF,@Dl

   因此在开发初期就要做好数据库性能管理优化。做科学的管理方式来提高系统开发效劳以及后期维护成本,要未雨绸缪不然亡羊51Testing软件测试网0g7w k/_'J

51Testing软件测试网OB!zZ$}UNR4`

补牢未必有用毕竟到时运行一段时间出现性能问题说不定整个架构要推翻呢。那成本可就大了。

#`;y+|e$fKJ0

b#]K&n1j {2p;E0   数据库性能管理与调优是相互相成的,只要充分结合起来就你把数据库的性能发挥出来。好的数据库设计可以减少应用服务端很51Testing软件测试网 P:uK3uV9V4r/m{

`D*J9A-y1O?0多的性能问题。

D7M$Q0N1yW9TY0

1t z+D0N(c$rI0  性能管理 是执行计划+性能监控+性能诊断51Testing软件测试网)l}Co5yER Y
数据库性能管理好能保证数据库的正常运行,51Testing软件测试网o2a mVA T
因此在系统上线前都要对系统数据库整体架构的评估普查性能测试比较好。51Testing软件测试网&WLr3v9d^,Sb p
例如:51Testing软件测试网U\^-[#R2_Ju h y6C
1:对大表需要分区(DB2 8的版本好像还没办法做到物理分区)51Testing软件测试网Z"y"HL h6n;S/fi4]J0@
2:适当建立索引51Testing软件测试网g8j+C6r-l _]
3:隔离级别的使用
H(FP!@I Ixc04:锁定与并行性控制
VS!NV"QhI05:SQL语法的书写标准像减少排序操作发生的可能性,同一列出现在多个胃词字句中考虑用in列表等等。
0_(}#PsR m?]$S!b'h06:后台批处理运行时 如果多CPU 可以使用并行处理不过要考虑只有单个作业比较重要数据量大的且不影响其他作业操作情况下使用
I0j5P+h G07:分页技术的使用。
*i!is2wN)u*ws;x08:物理磁盘IO之类的调整51Testing软件测试网/`+^c)|^|)H~
等等
4q A7@"ID:k6t0上线后监控 、做统计分析,碎片整理 等等

9a'R{!AiM051Testing软件测试网5W[d0{ iQ.`[

对于数据库的监控方式可以查看 本人博客的 关于数据库性能监控优化的文章51Testing软件测试网#s:}pm'F


TAG:

 

评分:0

我来说两句

Open Toolbar