mysql连接状态监控

  • 查看mysqladmin所在路径
    whereis mysqladmin

  • 查看连接状态
    ./mysqladmin -uroot -pPASSWORD -h127.0.0.1 status
    ./mysqladmin -uroot -pPASSWORD -h127.0.0.1 extended-status
    ./mysqladmin -uroot -pPASSWORD -h127.0.0.1 processlist

  • 查看最大连接数
    ./mysql -uroot -pPASSWORD -h127.0.0.1
    mysql> show variables like ‘%max_connections%’;

  • 查看服务器已响应的最大连接数:
    mysql> show global status like ‘Max_used_connections’;

  • 设置这个最大连接数值
    方法1:动态修改
    mysql> set GLOBAL max_connections=256;
    mysql> show variables like ‘%max_connections%’;
    方法2:修改mysql配置文件my.cnf,在[mysqld]段中添加或修改max_connections值,如:max_connections=128
    最后重启mysql服务。

  • mysqladmin status 结果解读
    Uptime: 17281716 Threads: 48 Questions: 293098782 Slow queries: 33 Opens: 2976269 Flush tables: 1 Open tables: 1999 Queries per second avg: 16.960
    Uptime:从mysql启动到现在mysql正常运行的时间
    Threads:当前连接数
    Questions: 服务器启动以来客户的查询数目,包括对表的查询,也包括服务器状态查询
    Slow queries:执行时间大于$long_query_time的慢查询的数量
    Opens:服务器已经打开的数据库表的数量
    Flush tables: 服务器已经执行的flush,refresh和reload命令的数量
    open tables:从服务器启动开始使用过的表的数量
    Queries per second avg:TPS

  • processlist 结果解读
    SHOW PROCESSLIST显示哪些线程正在运行。
    各列的含义和用途:
    ID列: 一个标识,你要kill一个语句的时候很有用,用命令杀掉进程: ./mysqladmin kill $id
    user列: 显示当前用户,如果不是root,此命令只显示权限范围内的sql语句。
    host列:显示这个语句是从哪个ip的哪个端口上发出的。用于追踪出问题语句的用户。
    db列:显示这个进程目前连接的是哪个数据库。
    command列:显示当前连接的执行的命令,一般就是休眠(sleep),查询(query),连接(connect)。
    time列: 此这个状态持续的时间,单位是秒。
    state列:显示使用当前连接的sql语句的状态,很重要的列,后续会有所有的状态的描述,请注意,state只是语句执行中的某一个状态,一个 sql语句,以查询为例,可能需要经过copying to tmp table,Sorting result,Sending data等状态才可以完成
    info列:显示这个sql语句,因为长度有限,所以长的sql语句就显示不全,但是一个判断问题语句的重要依据。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值