数据库优化知识总结
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值自动分配 列表分区:明确的指定列表 复合分区:上面几种的复用 其他分区:例如外键分区
sql优化链接:http://blog.csdn.net/axin66ok/article/details/7891386