{实验小结七}Mysql的一些优化措施

分析查询语句

1)explain [extended] select select_options

2)describe(可以简写为desc) select select_options

查看表的信息[show create table 表名]


什么时候索引没用

1)用like查询且%在开头

2)多列索引直接用第二个字段来查询,索引不起作用

例如:create index index_id_price on fruits(f_id,f_price);

explain select * from fruits where f_price=5.2;

这条select 语句中索引不起作用。

3)使用or关键字的查询语句前后不是索引列时



优化子查询:

子查询的效率不高,用连接(join)查询+索引来替代子查询


优化数据库结构

1)将字段很多的表分解成多个表:将常用的字段分离出来成为新表

2)增加中间表:适用于经常需要联合查询的表

3)合理增加冗余字段:

4)优化插入记录的速度:采用批量插入,使用load data infile 批量导入,插入时禁用索引(set改参数的值就行了),插入前禁用唯一性检查


分析表:analyze table 表名,分析期间加了只读的锁

检查表:check table 表名,检查期间加了只读的锁

优化表:optimize table 表名,优化碎片,优化期间加上只读的锁


优化服务器:

优化参数:详见show variables那里的解释,记得配置后重启mysql服务





你可能感兴趣的:(数据库,关键字,记录,where,create)