一:优化查询
1:分析查询语句
通过对查询语句的分析,可以了解查询语句执行情况,找出查询语句执行的瓶颈,从而优化查询语句。
2:索引对查询速度的影响
mysql提高性能的一个最有效的方式就是对数据表设置合理的索引。索引提供了高效访问数据的方法,并且加快查询速度,因此,索引对查询速度有至关重要的影响
3:使用索引查询
索引可以提升查询速度,但并不是使用带有索引的字段查询时,索引都会起作用
使用LIKE关键字的查询语句
使用多列索引的查询语句
使用OR关键字的查询语句
4:优化子查询
在MySQL中可以使用连接(JOIN)查询来替代子查询。连接查询不需要建立临时表,其速度比子查询要快,如果查询中使用到索引的话,性能会更好。
连接之所以更有效率,是因为MySQL不需要在内存中创建临时表来完成查询工作。
二:优化数据库结构
1:将字段很多的表分解成多个表——对于字段比较多的表,如果有些字段使用频率比较低,可以将这些字段分离出来形成新表。
2:增加中间表——对于需要经常联合查询的表,可以建立中间表以提高查询效率。
3:增加冗余字段——合理地加入冗余字段可以提高查询效率。
4:优化插入记录的速度——影响插入速度主要是:索引、唯一性校验和一次插入记录条数等,根据这些情况分别优化。
①:禁用索引②:禁用唯一性查询③:使用批量插入④:使用load data infile 批量导入
5:分析表、检查表和优化表——MySQL提供了分析表、检查表和优化表的语句。
①:分析表 分析表主要是分析关键字的分布。②:检查表 主要是检查表是否存在错误。③:优化表 主要是消除删除或者更新造成的空间浪费。
三:优化Mysql服务器
1:优化服务器硬件——服务器的硬件直接决定着Mysql数据库的性能。
2:优化Mysql参数——通过优化MySQL的参数,可以提高资源利用率,从而达到提高MySQL服务器性能的目的。(key_buffer_size、table_cache、query_cache_size)