MySQL監視 · 1 min read · Sep 12, 2025

mytopを使用してMySQLの接続とクエリを監視する

この記事では、MySQLクエリのライブ監視に便利なツールであるmytopのインストールと使用法について説明します。また、mytopでクエリを監視しながらユーザーが実行できるさまざまな操作についても見ていきます。

mytopについて

Mytopは、MySQLの監視用に設計されたtopコマンドに似たコマンドラインツールです。MySQL 3.22以降が必要で、現在のMySQL 5.xバージョンがサポートされています。ほとんどのLinuxシステムで正常に動作します。このチュートリアルでは、Ubuntuを基に使用します。システムにPerl、DBI、Term::ReadKeyがインストールされている必要があります。Term::ANSIColorを使用すると、出力に色を付けることができます。バージョン0.7はWindowsでも動作します。

インストール

mytopの機能に必要な他のツールやアプリケーションについてはイントロで情報を提供したので、mytopのインストールから直接始めます。

Debian:

apt-get install mytop

Ubuntu:

sudo apt-get install mytop

または、ウェブサイトからtarボールをダウンロードしてインストールする場合は、次のようにします。

tar -zxvf mytop-x.x.x.tar.gz (バージョン番号)  
 cd mytop-x.x.x. (バージョン番号)  
 perl Makefile.PL  
 make  
 make test  
 make install

上記のコマンドを入力してデータを抽出し、インストールを完了させてください。CentOSおよびRedHatユーザーは、rpmforgeリポジトリをダウンロードして自動的にインストールする必要があります。そうでない場合は、手動の方法を続けることができます。

mytopの使用

インストールが完了したら、mytopを使用する時間です。

mytop --prompt (これによりパスワードプロンプトが表示されますので、単にEnterを押してください)

上記はデフォルトの方法ですが、次のように入力することもできます。

mytop -u root -p (ここではMySQLのパスワードを使用する必要があります。ここでユーザー「root」を指定しています)

上記のコマンドが「root : NO PASS」などのエラーを返す場合は、次のように試してください。

mytop -u root -p xxxx ("xxxx"はあなたのパスワードを表します)

上記のコマンドを入力する前に、MySQLサーバーが稼働していることを確認してください。
完了したら、Enterを押すと次のような結果が返されるはずです:

最初の行はサーバーの名前(localhost)と、システムで実行されているMySQLのバージョンを示しています。青でマークされた行は、MySQLサーバーの稼働時間を日+時間:分:秒形式で示し、その横にはシステムの現在の時刻があります。
2行目は、稼働時間以来サーバーが処理したクエリの数を示しています。
3行目はスレッドの数を表示します。
画像の2番目の部分は、MySQLによって処理されたスレッドのリストを示しています。アイドル時間が最も少ない順にソートされています。情報を簡単に確認し理解できます。

mytopに渡すことができるいくつかの引数があります:
-uまたはuser username:基本的にmytopにログインする際のユーザー名を定義するために使用されます。デフォルトは「root」に設定されています。

-pまたはpassまたはpassword password:ユーザーログインに使用されるパスワード。デフォルトのパスワードは空またはなし、またはパスワードフィールドを空白のままにすることです。

-hまたはhost hostname[:port]:MySQLがデフォルトポートを使用していない場合にポートを指定します。デフォルトは3306に設定されています。

-sまたは-delay seconds:リフレッシュの時間間隔を指定します。デフォルトは5です。
これらはmytopのいくつかの引数です。詳細を知りたい場合は、次のように入力できます。

man mytop

manページには、mytopに関するすべての情報が十分に含まれています。
自分のデータの簡単なアクセスと監視のために作成できる設定ファイルを見てみましょう。

  user=root         #定義したいユーザー。
  pass=             #ユーザーのパスワードを定義できます。
  host=localhost     #ホスト名
  db=test            #データベース名。
  delay=5             #監視出力のリフレッシュの時間間隔。
  port=3306           #mytopに使用させたいポート。
  socket=             #ソケットを指定すると、mytopは指定されたポート番号とホスト名を無視します。必要ない場合は削除できます。
  batchmode=0      #画面のクリアを避け、MySQLによって使用されているクエリの直接のシリーズを提供します。
  header=1         #ヘッダーを表示するかどうかを指定します。mytopが実行中のときにhキーで切り替えることができます。
  color=1       #表示に色を使用するかどうかを指定します(色のサポートがある場合のみ機能します)。
  idle=1        #プロセスリストにアイドルプロセスを表示するかどうか。
  

上記のファイルは次のように作成できます。

nano ~/.mytop (これはホームフォルダに作成する必要があり、任意のエディタを使用できます。)

mytopの他のオプションを確認するには、?と入力してください。mytopで使用できるキーボードショートカットのページ全体が表示されます。

これがチュートリアルのすべてです。前述のようにmanページを確認し、インストール後の最新情報を得ることができます…

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。