连接库连接数查询以及kill指定连接

一、查看mysql配置的最大连接数

show variables like '%max_connection%';
max_connections	500

二、sql 查询mysql当前连接的数量

show status like  'Threads%';
| Threadpool_idle_threads | 0     |
| Threadpool_threads      | 0     |
| Threads_cached          | 29    |
| Threads_connected       | 13    |
| Threads_created         | 50    |
| Threads_rejected        | 0     |
| Threads_running         | 1     |
  1. Threads_connected:这个数值指的是打开的连接数,这个数据比较有价值一点
  2. Threads_running:这个数值指的是激活的连接数,或者说当前并发数,这个数值一般远低于connected数值.
  3. Threads_created:表示创建过的线程数

注意:如果发现Threads_created值过大的话,表明MySQL服务器一直在创建线程,这也是比较耗资源,可以适当增加配置文件中thread_cache_size值,查询服务器thread_cache_size的值:

三、mysql查询缓存数

show variables like 'thread_cache_size';

备注:thread_cache_size是什么
我们在MySQL服务器配置文件中设置了thread_cache_size,当客户端断开之后,服务器处理此客户的线程将会缓存起来以响应下一个客户而不是销毁(前提是缓存数未达上限)。

四、查询当你使用mysql的用户和对应的IP地址

可以查看当前哪个账户登录了,连接的是哪个库

show processlist
155	root 58.246.145.226:52413 db_test Query	0 starting	show processlist

五、通过事务查询当前正在执行的sql

#查询正在执行的sql,包括sql的内容

select * from information_schema.INNODB_TRX

可以从上面得到trx_mysql_thread_id,通过trx_mysql_thread_id我可以可以知道哪个机器正在执行什么sql

#再通过trx_mysql_thread_id找到thread_id

select * from `performance_schema`.`threads` where processlist_id='10893928'

#再通过thread_id可以看到执行的sql

select * from `performance_schema`.events_statements_current where thread_id=

六、Kill掉不需要的mysql连接

#查询正在链接的用户

SELECT * from information_schema.PROCESSLIST where db='machaon_saas_00' and time<2

#通过KILL关闭正在使用mysql的人员

SELECT
	CONCAT( 'KILL ', id, ';' ) 
FROM
	information_schema.PROCESSLIST 
WHERE
	db = 'machaon_saas_00' 
	AND time <2

本文转至:https://www.cnblogs.com/zhya/p/11447978.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值