🔥 交流讨论:欢迎加入我们一起学习!
🔥 资源分享:耗时200+小时精选的「软件测试」资料包
🔥 教程推荐:火遍全网的《软件测试》教程
📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
在工作中,有时候我们需要了解MySQL服务器的状态信息,这时候,我们可以使用SHOW STATUS命令来查看服务器的状态信息。
SHOW STATUS命令会显示每个服务器变量的名字和值,状态变量是只读的。我们可以在MySQL客户端下运行SHOW STATUS或者在命令行运用mysqladmin extended-status来查看这些变量。如果使用SQL命令,可以使用LIKE或者WHERE来限制结果。LIKE可以对变量名做标准模式匹配。
SHOW STATUS中混杂了全局和会话变量,其中许多变量有双重域:既是全局变量,也是会话变量,有相同的名字。如果只需要看全局变量,需要改为SHOW GLOBAL STATUS查看。
我们看一下在自己的数据库里执行SHOW STATUS命令时,会得到300多条状态信息,这种情况下,如果直接用这个命令,从中筛选需要的记录也是一个很耗费精力的事情。这时候,我们就可以使用前文所说的LIKE来定制我们的命令。
比如我们需要查看当前服务器启动后的运行时间,可以执行如下:
show status like ‘uptime’; 得到如下结果
如果我们需要查询本次服务器启动之后执行select语句的次数,可以执行如下命令:
show status like ‘com_select’;
当然,我们也可以使用通配符来进行模糊匹配,例如:
show status的状态统计项很多,这边可以参考mysql官方手册列出的信息找到对自己有用的信息:
https://dev.mysql.com/doc/refman/5.7/en/server-status-variables.html
这边列出部分常用的状态信息查看语句:
–查看MySQL本次启动后的运行时间(单位:秒)
show status like ‘uptime’;
–查看select语句的执行数
show [global] status like ‘com_select’;
–查看insert语句的执行数
show [global] status like ‘com_insert’;
–查看update语句的执行数
show [global] status like ‘com_update’;
–查看delete语句的执行数
show [global] status like ‘com_delete’;
–查看试图连接到MySQL(不管是否连接成功)的连接数
show status like ‘connections’;
–查看线程缓存内的线程的数量。
show status like ‘threads_cached’;
–查看当前打开的连接的数量。
show status like ‘threads_connected’;
(此条与上面重复)–查看当前打开的连接的数量。
show status like ‘threads_connected’;
–查看创建用来处理连接的线程数。如果Threads_created较大,你可能要增加thread_cache_size值。
show status like ‘threads_created’;
–查看激活的(非睡眠状态)线程数。
show status like ‘threads_running’;
–查看立即获得的表的锁的次数。
show status like ‘table_locks_immediate’;
–查看不能立即获得的表的锁的次数。如果该值较高,并且有性能问题,你应首先优化查询,然后拆分表或使用复制。
show status like ‘table_locks_waited’;
–查看创建时间超过slow_launch_time秒的线程数。
show status like ‘slow_launch_threads’;
–查看查询时间超过long_query_time秒的查询的个数。
show status like ‘slow_queries’;
最后我邀请你进入我们的【软件测试学习交流群:785128166】, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:程序员二黑】自提!