数据库优化知识总结

1、为什么要进行数据库优化?

1 1、可以增强数据库的可用性,提高内存使用效率,避免数据库异常现象的发生。
2 
3 2、当数据多到一定程度的时候,数据库性能就会开始变慢了,适当的优化提高数据库的查询和访问效率。

2、数据库优化措施?

1、建议不用“*”代替所有的列名
2、删除所有的数据用TRUNCATE代替DELETE
3、用NOT EXISTS 代替 NOT IN
4、用EXISTS 代替 IN
5、用EXISTS 代替 DISTINCT
6、驱动表的选择
    6.1、from 后面靠右的那个表是驱动表(表都没索引的情况)
    6.2、再有索引的情况下,应该是没索引的那张表是驱动表
    6.3、驱动表要选择小表(过滤后的数据量小)
7、where 子句的连接顺序
    7.1、过滤记录越多的条件子句应放置到后面
    7.2、表连接关系放在前面
    

8、索引-通过索引,执行效率更高
    8.1、单列索引:就是一个列的索引
    8.2、组合索引:就是多列索引
    8.3、分区索引:基于分区表
    8.4、B树索引:普通索引
    8.5、唯一索引:在索引里面增加了唯一约束
    8.6、反向键索引
    8.7、位图索引
    8.8、函数索引
    

9、表分区
    把表中数据划分成若干部分,并存储在不同的位置
优点:
    改善查询性能
    表更容易管理
    便于备份和恢复
    提高数据安全性
表分区种类
    散列分区:根据hash值自动分配
    列表分区:明确的指定列表
    复合分区:上面几种的复用
    其他分区:例如外键分区
    
View Code

sql优化链接:http://blog.csdn.net/axin66ok/article/details/7891386

原文地址:https://www.cnblogs.com/wiseroll/p/7085335.html