前言
作为数据库顾问,每天都接到很多客户的电话。他们的有各种各样不同的需要,但是数据库慢是一个非常普遍的问题。客户往往想寻找一剂灵丹妙药,包治百病,一下解决所有的性能问题。每次我需要花很多时间跟他们解释。这样的东西是不存在的。数据库的性能问题,和很多因素有关, 下面我总结下跟数据库性能相关的六大因素。希望在以后大家在排查性能问题时,能让大家清晰的思路
六大因素
从底层到上层依次有:
硬件能力
•CPU
•
内存
•IO
•
网络
系统环境
•OS
、
DB
版本
•OS
、
DB
参数配置
数据库内部因素
•
索引
•
阻塞,等待
•
隐式转换
•参数嗅探
•统计信息
系统规模
•
并发量
•
数据量
•
用户量
代码设计
•OR
、
LIKE
等语句写法
•
过多表关联
•
表结构、过度范式
业务模型及架构
•单服务器支撑
•OLTP&OLAP混合
总结
数据库性能问题涉及多种因素,往往是多个因素叠加导致。我们应该对数据库进行一次综合的评价之后,再给出对应的解决方案。针对每个因素,如果判断,如何解决,,都有很多内容可以分享,后面我会以六大要素为提纲分别给出对应问题的解决方案。也欢迎各个小伙伴补充。让我对这个文章更加完善。