MySQL显示链接数
文章目錄
最近服务时不时的会卡顿,不知道什么原因。下班之后突然想到速度慢,一般都出在数据库上。于是想到查看MySQL链接数,网上查到执行show processlist;
即可。
在卡顿时,查询结果中发现以下可疑连接,如下1
2
3 Waiting for table level lock | UPDATE `sku` SET `view_num` = `sku`.`view_num` + 1 WHER | 0 | 0 | 1 |
Waiting for table level lock | SELECT `sku`.`id`, `sku`.`name`, `sku`.`dosage_form`, `sku`.`specs`, `sku`.`factory`, `sku`.`categor | 0 | 0 | 1 |
在淘宝的MySQL资料MySQL 锁问题最佳实践里找到’table level lock’的原因,是因为MyISAM,引发table level lock wait。查看建表语句,果然是MyISAM引擎, 将它转成InnoDB即可解决问题。
上面使用show processlist
命令显示不完全,可以加上full, 即执行show full processlist
参考Converting Tables from MyISAM to InnoDB, 执行ALTER TABLE table_name ENGINE=InnoDB;
即可转换。