mysql的优化总结(二)

二。sql语句的优化

1)可以适当的添加索引 但是要注意引起索引失效的几种情况

1>like条件 模糊查询 两个%会导致索引失效

解决方法:只要保证左边没有%号即可

2>索引字段不要使用运算及函数

3>设计表字段的时候  类型是字符串  走索引      如果是int类型   不走索引

4>最左原则 查询过程中条件必须包含最左的一个,否则索引失效

5>避免使用or 否则索引失效

2)开启慢查询

我们不断的在执行sql语句  记录下查询时间超过2秒或者指定时间的sql语句  将这些sql语句写入日志  接下来我们对日志文件中的sql语句  进行 explain 或者 desc分析

slow_query_log=on                开启慢查询

slow_query_log_file=slow.log    查询超过2秒的sql语句  记录到这里

long_query_time=1                记录查询超过1秒的sql语句

log_queries_not_using_indexes     记录查询没有使用到索引的sql语句

3)2000条数据是个界限  2000条范围之内  不用添加索引

4)如果数据量大,不要在sql语句上进行复杂的逻辑运算,避免使用视图 触发器 存储

5)多表联合查询  尽量避免嵌套查询  in   尽量使用inner join  左连接  右链接

你可能感兴趣的:(mysql的优化总结(二))