現在稼動しているMySQLのコネクション数を確認する場合は以下のコマンドにて行う。
mysql> SHOW GLOBAL VARIABLES like 'max_connections'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | max_connections | 200 | +-----------------+-------+ 1 row in set (0.04 sec)
# /usr/local/mysql/libexec/mysqld --verbose --help | grep ^max_connections max_connections 100
MySQL 4.0以降はシステム環境変数を稼動状態でも変更することが可能である。
管理
SET GLOBAL max_connections=200;
mysql> SET GLOBAL max_connections=200; Query OK, 0 rows affected (0.08 sec)
MySQL起動時に指定したコネクション数でmysqldを起動させるにはmy.cnfに以下の設定を追加する。 (my.cnfがない場合は作成する)
[mysqld] set-variable = max_connections=200
MySQLの再起動後に設定が適用される。
http://dev.mysql.com/doc/refman/4.1/ja/system-variables.html
現在のコネクション数を確認するには、variableまたはstatusの値を参照する。
show status like 'Connections';
show status like 'Threads_connected';
コマンドラインから実行して値のみを取得する場合には以下のとなる。
/usr/bin/mysql -s -N -u [USER] -p[PASSWD] -e "show status like 'Connections';" | cut -f2
/usr/bin/mysql -s -N -u [USER] -p[PASSWD] -e "show status like 'Threads_connected';" | cut -f2
「現在開いている接続の数」は現在値が入るが、「現在開いている接続の数」は累積値となるため、現在値を把握するためには前回値との差分を取る必要がある点に注意すること。