我们都知道要成为架构师,数据库优化是必须要了解一些的,今天我们就来谈一谈Mysql数据库优化问题。限于笔者技术有限,不敢高谈阔论,于是整理了如下资料供大家参考。
(1) show status 命令查看SQL的整体执行效率
(2) 定位执行效率较低的SQL——select
因为select是执行得最多的,像一般的增删改没有占用太多效率,一般是查询。
(3) 通过explain分析SQL语句的执行效率
如果我们写一个语句,但是不确定这个语句效率怎么样。Mysql内置提供一个分析工具,可以帮助你分析这个语句,因为这个语句效率怎么样,你不知道,但是Mysql肯定知道。
(4) 确定问题采取优化
我们将有问题的语句找到后,需要对其进行优化。
对于优化来说,关键的是com开头的这些字段,所以我们只需要执行这条命令来查看com开头的字段。
我们可以使用如下语句来查看连接次数:
show status like 'connections';
可以工具连接数据库的次数来查看web页面访问时的数据库访问次数。
我们实际生产环境中有时因为运行时间过长会出现一些问题,这时,这个运行时间能帮助我们了解这台服务器上的Mysql连续工作了多久。一般情况下,Mysql需要半年重启一次。
这个慢查询的次数就和数据库优化很有关系了!
这一项Mysql默认是10秒。一般这个慢查询每个公司不一样,根据你们公司的需求来设置。
其实还有其他的数据库优化方法:例如加索引,杀进程等等,此文暂时不讲述。