MySQL数据优化
1.优化索引
索引占用存储空间少,mysql会自动为primary和unique列增加索引,索引会降低数据库增删改效率。一般对sql的where条件字段或order by 字段建立索引
创建索引
CREATE INDEX 索引名 ON 表名(字段名)
删除索引
DROP INDEX 索引名
查询索引
SHOW INDEX FROM 表名
2.添加查询缓存
3.优化数据库SQL语句
1)where条件尽量不要使用函数,!=或<>,OR,会使索引失效
2)确定结果只有一条增加 LIMIT 1
3)where多条件and连接时,要把精确的条件放在前面
4)表连接查询连接字段两个表都要增加索引(尽量避免连表查询),用‘’字符代替null字段,百万级以上数据查询要先分页,尽量避免大事务操作
5)尽量多的sql查询条件压缩到一条
6)避免使用Having除非聚合函数的过滤
7)使用union all 而不是 union,使用varchar和nvarchar而不是char和nchar
8) 查询时用具体的字段代替*
4.数据库Cluster
注意:
慢查询:show variable like '%quer%'
执行计划(解释按钮)