InfiniDBはMySQLをベースとした製品のため、多くのMySQLコマンドを実行する事ができます。
このため、例えばInfiniDBに対してどれくらいセッションが接続されているのか、どのようなSQLが実行されているのかを確認したいといった場合には、MySQLのshow processlistコマンドを利用して確認することができます。
使用例
SHOW PROCESSLIST
SHOW FULL PROCESSLIST
SHOW PROCESSLIST
SHOW FULL PROCESSLIST
アクティブなセッションの確認例
以下はセッションが存在している時の表示例です。ID=95はアクティブなセッションを確認している自セッションで、ID=96が処理を実行しているセッションを表しています。
1 2 3 4 5 6 7 8 9 |
# idbmysql mysql> show processlist; +----+------+-----------+-------------+---------+------+--------------+------------------------------------------------------------------------------------------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+-------------+---------+------+--------------+------------------------------------------------------------------------------------------------------+ | 95 | root | localhost | NULL | Query | 0 | NULL | show processlist | | 96 | root | localhost | infdb | Query | 1 | Sending data | select * into outfile "/tmp/part_data.csv" fields terminated by ',' optionally enclosed by '"' from | +----+------+-----------+-------------+---------+------+--------------+------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) |
なお、Info列にはクエリの情報が表示されますが、100文字までの制限があります。100文字以上の場合には省略されてしまうため、全体を確認したい場合には次の例のように、FULLオプションを指定して確認をしてください。
FULLオプションを指定した実行例
FULLオプションを指定すると100文字を超えるSQL文も全体を確認することができます。
1 2 3 4 5 6 7 8 |
mysql> show full processlist; +----+------+-----------+-------------+---------+------+--------------+---------------------------------------------------------------------------------------------------------------------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+-------------+---------+------+--------------+---------------------------------------------------------------------------------------------------------------------------------+ | 95 | root | localhost | NULL | Query | 0 | NULL | show full processlist | | 96 | root | localhost | infdb | Query | 3 | Sending data | select * into outfile "/tmp/part_data.csv" fields terminated by ',' optionally enclosed by '"' from infinidb_vtable.$vtable_96 | +----+------+-----------+-------------+---------+------+--------------+---------------------------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec) |
【補足】SHOW PROCESSLISTコマンドについて
出力される各列の内容については以下のマニュアルをご参照ください。MySQL :: MySQL 5.1 リファレンスマニュアル (オンラインヘルプ) :: 8.5.5.31 SHOW PROCESSLIST 構文
http://dev.mysql.com/doc/refman/5.1-olh/ja/show-processlist.html
参考
なお、InfiniDBの管理コマンドCalpont ConsoleでもアクティブなSQL文を確認することができます。詳細については以下の記事をご参照ください。
InfiniDBでアクティブなセッションを確認する方法(2)