一、数据库调优措施
1.1、调优目标
- 吞吐量更大
- 响应速度更快
1.2、如何定位调优问题
- 用户的反馈(主要)
- 日志分析(主要)
- 服务器资源使用监控
- 数据库内部状况监控
1.3、调优步骤
第一步、选择合适的数据库管理系统
如果对事务性处理以及安全性要求较高的话,可以采用SQL server
、Oracle
等商业的数据库产品。也可以采用开源的MySQL
,事务处理采用InnoDB
,非事务处理采用MyISAM
。
第二步、优化表设计
数据表的设计直接影响了后续的SQL查询语句。在使用MySQL
的情况下,我们还可以根据不同表的使用需求,选择不同的存储引擎。此外,还有以下的优化原则:
- 表的结构
遵循三范式
的原则。这样可以减少冗余字段,减少更新、插入以及删除时的异常情况。 - 当
查询比较多
的时候,可以使用反范式化进行优化 ,增加冗余字段以提高查询效率。 - 表字段的
数据类型选择
。如果字段采用数值类型就不用字符类型,定长字符用CHAR
,变长字符用VARCHAR
。
第三步、优化逻辑查询
SQL的查询优化,分为逻辑查询优化
以及物理查询优化
,其中,逻辑查询优化通过改变SQL语句的内容让SQL执行更加高效,方式有