MySQLのコネクション数を取得

表題の通り。接続コネクション数がMaxConnectionsに達してエラーが出てしまった。その後、コネクション数を監視していて何が多く接続しているのかを確認したかった。

■ 環境

  • AWS RDS
  • MySQL 5.6.23

■ show processlist

下記で取得することができる。

mysql> show processlist;
+--------+----------+--------------------+--------------------+---------+-------+-------+------------------+
| Id     | User     | Host               | db                 | Command | Time  | State | Info             |
+--------+----------+--------------------+--------------------+---------+-------+-------+------------------+
|  31660 | rdsadmin | localhost:40321    | mysql              | Sleep   |     3 |       | NULL             |
  :
+--------+----------+--------------------+--------------------+---------+-------+-------+------------------+
18 rows in set (0.00 sec)

mysql>

rdsadmin“はRDSで起動しているからであろう。これは問題ない。それ以外のプロセスで”State“が”Sleep“で”Time“が異様に長いものは下記でプロセスを落としてしまう。

mysql> kill 137798;
Query OK, 0 rows affected (0.01 sec)

mysql>

以上。

■ 関連