数据库调优
1. 影响数据库性能的主要因素。
- 服务器硬件因素
--服务器数量
--内存,CPU,磁盘
- 网络环境
- 数据库设计
- 数据查询
服务器硬件及网络的建议
- 增加服务器的数量,组建分布式平台
- 增加CPU的数量
- 增加内存容量和频率,打开双通道等
- 硬盘跟换为多快,高速(1W+转)的硬盘
- 网络选用千M以上带宽
- 网路线路选用专线,避免其他网络数据(如BT)占用。
数据库设计原则的建议
- 规范命名
- 三少原则(数据表,字段,组合主键)
- 控制字段引用
- 库表的重复控制
- 并发控制
- 必要的讨论
- 数据小组的审核
- 头文件的处理
数据库设计工作的建议
- 分类拆分数据量大的表,减少单表记录数
- 适量考虑分布式分区
- 合理的索引设计
- 数据操作的优化
- 数据库参数的调整
- 避免长事务,分解事务,减少负荷,提高效率
- 适当超前
- 必要的工具
数据库性能调优原则
- 尽可能排除资源瓶颈(CPU/RAM/IO/NETWORK)
- 尽可能减少数据库IO
- 尽可能用index seek ,避免使用index sacn
- 减少阻塞,死锁和不恰当的索引
- 尽可能不用游标
- 尽可能不用触发器而用存储过程
数据库查询优化的方法
• 减少数据库访问量和数据传输量
• 避免使用不兼容的数据类型
• 避免在where子句中的“=”左侧使用表达式
• 避免使用!=或<>、IS NULL或IS NOT NULL、IN或NOT IN
• 避免在索引字段中使用非字符打头的搜索,如’%Abc%’
• 尽可能使用UNION方案替换OR条件
• 尽量考虑where及order by子句间的顺序按索引顺序
• 尽量使用数字型字段
• 尽量使用>=替换>
• 合理使用EXISTS和NOT EXISTS
• 合理使用视图
• 合理算法的使用
• 必要时强制使用索引
• 适当考虑物理分开存储
• 使用合适的工具
摘自衣志明MSDN课程