MySQL 監視
設定不要で、MySQLのクエリパフォーマンス、レプリケーションの状態、接続プール、およびストレージのメトリクスをリアルタイムで監視できます。
なぜ監視するのか MySQL?
MySQLは、世界で最も普及しているオープンソースのリレーショナルデータベースであり、スタートアップからフォーチュン500企業に至るまで、数百万ものアプリケーションを支えています。MySQLの監視は、クエリの遅延を検知し、接続プールの枯渇を防ぎ、レプリケーションの遅延を追跡し、ストレージの使用状況を最適化するために不可欠です。XitoringのMySQL統合機能により、データベースのパフォーマンスを詳細に把握することができます。
MySQL 監視を、 解説
MySQL 監視は、バッファプールのチャーン、スロークエリ、レプリケーション ドリフト、コネクション スレッドの飽和を、アプリ内のあらゆる読み取りを遅くしたり、レプリカ フェイルオーバー ストームに発展させたりする前に検知します。WordPress、Laravel、Magento、あらゆる RDS/Aurora バックエンドのワークロードにおいて、データベースごとの可視性こそが、ユーザー報告の低速化と根本原因とを結びつける最も有用な単一のシグナルです。Xitoring はあなたの MySQL を自動検出し、performance_schema と標準的なステータスビューにクエリし、Slack、PagerDuty、Telegram、その他既存のオンコール体制にアラートを送信します。
私たちが 監視するもの
1秒あたりのクエリ数
SELECT、INSERT、UPDATE、DELETEクエリのレート。
アクティブ接続
現在MySQLに対してアクティブな接続数。
遅いクエリ
slow query閾値を超えるクエリ数。
レプリケーションラグ
レプリケーションでマスターから遅れている秒数。
InnoDBバッファプール
バッファプール使用量とヒット率。
スレッド状態
スレッド状態の分布(running、sleeping、locked)。
テーブルロック
テーブルロックの待機と即時取得のレート。
一時テーブル
ディスク上に作成された一時テーブルのレート。
送受信バイト
MySQLへの送受信ネットワークスループット。
中断された接続
失敗した接続試行と中断されたクライアント。
Open_tables 対 table_open_cache
現在開いているテーブル ハンドル数と構成されたキャッシュ サイズの比較。Open_tables がキャッシュ上限に近づくと、MySQL はエビクションと再オープンを行います — 測定可能なレイテンシ コストが発生します。
Innodb_os_log_pending_fsyncs
InnoDB redo ログへの保留中の fsync。継続的な非ゼロ値は、`sync_binlog`/`innodb_flush_log_at_trx_commit` の設定がディスクでボトルネックになっていることを意味します。
設定可能 アラートのトリガー
ダッシュボードでカスタムトリガーを設定し、MySQLのメトリクスが定義した閾値を超えた瞬間に通知を受け取れるようにします。

アクティブ接続
重要なアクティブ接続がmax_connectionsに近づいたときに発動。新規接続拒否やアプリケーションエラーのリスクを示します。
レプリケーションラグ
重要なレプリケーションが遅延したときに発動。マスターとレプリカ間のデータ不整合リスクを示します。
遅いクエリ
警告遅いクエリ数が閾値を超えたときにアラート。パフォーマンス低下を示します。
InnoDBバッファプール
警告バッファプールヒット率が低下したときに発動。過剰なディスクI/Oを示します。
中断された接続
警告接続失敗の急増で発動。認証問題やネットワーク問題を示します。
テーブルロック待機
重要なロック競合が増加し、クエリパフォーマンスが低下したときにアラート。
の重要性: MySQL監視
MySQLは数百万のアプリケーションの重要データを処理します。適切な監視がないと、遅いクエリ、レプリケーションのずれ、接続枯渇が障害やデータ不整合を引き起こします。
- ユーザー体験に影響する前に遅いクエリを検出
- 閾値アラートで接続プール枯渇を防止
- レプリカ間のデータ一貫性のためにレプリケーションを監視
- ストレージエンジンの最適な健全性のためにInnoDBパフォーマンスを追跡
- ロック競合とクエリボトルネックを早期に特定


なぜ選ぶべきか: Xitoring
XitoringはゼロコンフィグでエンタープライズグレードのMySQL監視を提供します。軽量エージェントがMySQLインスタンスを自動検出し、60秒以内にメトリクス収集を開始、既存の通知チャネルと統合します。
- ワンコマンドインストール — 複雑なYAMLや設定ファイルは不要
- 低遅延チェックのための15以上のグローバル監視ノード
- サーバー、データベース、稼働率を統合したダッシュボード
- Slack、PagerDuty、Telegramなどによる柔軟なアラート
- キャパシティプランニングと監査のための履歴データ保持


よくある MySQL 監視 シナリオ
MySQLが今日一般的に実行されている場所 — そして誰も監視していない場合に何が問題になる可能性があるか。
マネージドクラウドデータベース(AWS、Azure、Google)
クラウドプロバイダーはサーバーを管理しますが、独自のクエリが遅い、接続が不足している、またはバックアップコピーが静かに遅れをとっている場合は教えてくれません。私たちはプロバイダーがあなたに任せる問題を捕捉し、遅延がチームを不意打ちしないようにします。
ライブバックアップコピーを持つメインデータベース
本番データベースは通常、メインデータベースが故障した場合に引き継ぐ準備ができているライブバックアップを実行します。そのバックアップが静かに遅れをとると、スムーズな引き継ぎであるべきものが実際の停止となり、時にはデータ損失を伴います。私たちはすべてのコピーを監視し、必要なときにバックアップが真に準備できているようにします。
Kubernetes内で実行されるデータベース
Kubernetes内のデータベースは、プラットフォームによって自動的に移動、再起動、更新されます。ほとんどの場合、それは安全ですが、そうでない場合、通常は不満を抱いたユーザーから知ることになります。私たちは早期警告の兆候を表面化させ、定期的な更新がインシデントになる前にチームが介入できるようにします。
MySQL の 前提条件
これらが揃っていることを確認してください — 揃っていれば、ほとんどの導入は 60 秒で完了します。
- MySQL 5.7 または 8.x がサーバー上で稼働していること
- performance_schema = ON(5.7+ ではデフォルト、無効な場合は [mysqld] で設定)
- PROCESS、REPLICATION CLIENT、および performance_schema への SELECT を持つ監視ユーザー
はじめに 議事録
Xitogent をサーバーにインストール
まだの場合は、軽量な Xitogent 監視エージェントをサーバーにインストールしてください。
curl -s https://xitoring.com/install.sh | sudo bash -s -- --key=YOUR_API_KEYMySQL に監視ユーザーを作成
Xitogent がメトリクスを収集できるように、専用の読み取り専用ユーザーを作成します:
CREATE USER 'xitoring'@'%' IDENTIFIED BY 'your_secure_password';
GRANT REPLICATION CLIENT ON *.* TO 'xitoring'@'%' WITH MAX_USER_CONNECTIONS 5;
GRANT PROCESS ON *.* TO 'xitoring'@'%';
GRANT SELECT ON performance_schema.* TO 'xitoring'@'%';
FLUSH PRIVILEGES;MySQL 連携を有効化
Xitoring ダッシュボードまたは CLI から、監視用の認証情報を使って MySQL 連携を有効化してください。
sudo xitogent integrateアラートしきい値を設定(オプション)
レプリケーション遅延、スロークエリ、接続数などのメトリクスにカスタムしきい値を設定し、注意が必要なときに通知を受け取れるようにします。
動作確認
サーバー上でこのコマンドを実行して、Xitogent が連携を認識していることを確認してください。約 30 秒以内に新しいメトリクスがダッシュボードに流れ始めます。
sudo xitogent status代替ツールを 検討中ですか?
MySQL 監視の代替ツールと比べて Xitoring がどう優れているかをご覧ください — 定額料金、より深い統合、そしてスタック全体をカバーする 1 つのエージェント。
頻繁に 質問をした
監視ユーザーにはどのような権限が必要ですか?
この統合はMySQLのパフォーマンスに影響を与えますか?
MySQLのレプリケーションを監視することはできますか?
これは、RDS上のMySQLやクラウドデータベースでも動作しますか?
どのバージョンのMySQLがサポートされていますか?
指標はどのくらいの頻度で収集されますか?
MySQL と MariaDB の監視はどう違いますか?
この統合は MySQL のパフォーマンスに影響しますか?
サポートされている MySQL バージョンは何ですか?
探検を続けよう




