工作中进行SQL优化的情况下,常常有这样的问题,SQL已经全部利用索引,请求的数据量较小, 总的数据量不大的情况下,仍有很多慢查询的出现(我们规定是>20ms)。这个时候就要关注我们的并发量,事务锁,的情况。
对于游戏来说,DB存在大量的insert 、update 可谓玩家的很多动作都会与DB沟通。
本文暂时忽略OS 中的 IO利用率,网卡流量,CPU变化情况,介绍如何查看MySQL部分参数
查看每秒事务数:
show global status like 'com_commit';
show global status like 'com_rollback';
TPS=(com_commit+com_rollback)/seconds
查看每秒查询的数量:
mysqladmin status 取出QPS
查询SQL执行状态:
show processlist; 截取sql,执行状态,
查看连接数:
show status like 'Threads%';
Threads_connected 已经打开的线程数
Threads_running 处于活动的线程
对于MySQL高并发优化经验可参考: http://www.gxldan.com/archives/203.html
高性能MySQL 第三版 下载链接: http://vdisk.weibo.com/s/hhS9w
生产环境维护 参考:http://www.mysqlops.com/2011/09/02/mysql-fault-manual.html
以上状态脚本 稍后放出!