MySQLインテグレーションでは、ご利用のMySQLデータベースからインベントリとメトリクスを収集して当社のプラットフォームに送信します。このプラットフォームで、ご利用のデータベースサーバの健全性を確認し、メトリックデータを分析して、問題の原因を簡単に見つけることができます。
インテグレーションのインストールと、当社がどのようなデータを収集するかについてお読みください。
互換性および要件
当社のインテグレーションは、MySQLバージョン5.6以上と互換性があります。
インテグレーションをインストールする前に、以下の要件を満たしていることを確認してください。
New Relicアカウント。アカウントをお持ちでない場合無料サインアップクレジットカードは不要です。
MySQLがKubernetesまたはAmazon ECSで実行されていない場合、LinuxまたはWindows OSホストに、またはMySQLがインストールされている場所にリモートアクセスできるホストにInfrastructureエージェントをインストールできます。その他の場合:
重要
MySQL v8.0以降では、次のメトリクスはサポートされていません。cluster.slaveRunning
、db.qCacheFreeMemoryBytes
、db.qCacheHitRatio
、db.qCacheNotCachedPerSecond
。
クイックスタート
MySQLデータベースを迅速に計装し、ガイド付きインストールでテレメトリデータを送信します。ガイド付きインストールは、New Relic CLIおよびインフラストラクチャエージェントをダウンロードおよびインストールする環境にカスタマイズされたCLIコマンドを作成します。
始める準備はできていますか?ボタンの1つをクリックし、試行してください。
当社のガイド付きインストールは、インフラストラクチャエージェントを使用してMySQLインテグレーションを設定します。それだけではなく、環境内で実行中のその他のアプリケーションとログソースを発見し、どれを計装するべきかを推奨します。
ガイド付きインストールは、ほとんどの設定と連動します。ただし、ニーズに合わない場合は、以下のその他の方法を検索し、MySQLデータベースのモニターを開始できます。
インストールと有効化
MySQLインテグレーションをインストールするには、お使いの環境の指示に従います。
追加の注:
- アドバンスト:インテグレーションはtarball書式で使用すると、パッケージマネージャ以外にもインストールできます。
- オンホストインテグレーションは、自動的にアップデートしません。最善の結果を得るため、インテグレーションパッケージの更新とInfrastructureエージェントの更新を定期的に実施してください。
設定
インテグレーションのYAML形式設定では、必要なログインクレデンシャルやデータの収集方法を設定できます。どのオプションを変更するかは、設定とプリファレンスにより異なります。
インストールの方法により、インテグレーションの設定方法はいくつかあります。
- Kubernetesで有効化した場合:Kubernetes上で実行中のサービスの監視を参照してください。
- Amazon ECSで有効化した場合:ECS上で実行中のサービスの監視を参照してください。
- オンホストにインストールされている場合:インテグレーションのYAML設定ファイルである
mysql-config.yml
で設定を編集します。
この設定は、メトリクスとすべての設定オプションを取得する単一のコマンド、status
を提供します。このコマンドは、以下の引数を受け取ります。
ホスト名
:MySQLのホスト名。ポート
:MySQLサーバーがリッスンしているポート。ユーザー名
:MySQLサーバーに接続しているユーザー。アクティベーション命令
でCREATE USERコマンドを使用した場合は、これをnewrelic
に設定する必要があります。パスワード
:上記で指定されたユーザーのパスワード。extended_metrics
:メトリクスの拡張セットが取得されます。デフォルトでは無効です。1
に設定して有効化します。これにより、スレーブメトリクスの取得も可能になります。extended_innodb_metrics
:追加innodbメトリクスが取得されます。デフォルトでは無効です。有効化するには、1
に設定します。extended_myisam_metrics
:追加MyISAMメトリクスが取得されます。デフォルトでは無効です。有効化するには、1
に設定します。- オプション:
labels
フィールド。たとえば、env
ラベルはenvironment
インベントリデータを制御します。デフォルト値はproduction
です。 - オプション:
メトリクス
フィールド。インベントリの収集を無効化するには、1
に設定します。
設定ファイルのサンプルを参照してください。
遠隔監視を起動する
remote_monitoring
パラメーターにより、このインテグレーションの遠隔監視とマルチテナンシーが有効になります。
このパラメーターはデフォルトで有効にされており、カスタム環境で必要な場合を除き変更しないでください。
remote_monitoring
を起動すると、一部の属性が変更されるおよび/または設定アラートに影響が及ぶ可能性があります。詳しくは、オンホストインテグレーションにおける遠隔監視を参照してください。
重要
remote_monitoring
を使用するには、Infrastructureエージェントのバージョン1.2.25以降が必要です。
環境変数パススルー
環境変数は構成設定の管理に使用でき、Infrastructureエージェントにパススルーされます。この機能の利用手順に関しては、Infrastructureエージェントを設定するを参照してください。
重要
シークレット管理を使用して、New Relic Infrastructureのエージェントによりオンホストインテグレーションを設定し、インテグレーションの設定ファイルにプレーンテキストで書き込みを行わずに(パスワードのような)機密データを使用できます。詳細については、シークレット管理を参照してください。
オンホストインテグレーション設定の一般的な構成の詳細については、設定を参照してください。
データの検索と使用
このサービスからのデータは、インテグレーションダッシュボードにレポートされます。
メトリクスは、MysqlSample
イベントタイプに関連付けられます。トラブルシューティング目的で、またはカスタムのチャートとダッシュボードを作成するために、このデータのクエリを行えます。
データの検索・使用方法の詳細については、 インテグレーションデータを理解するを参照してください。
メトリックデータ
MySQLインテグレーションは、以下のメトリクスを収集します。
デフォルトのメトリクス
これらのメトリクスはデフォルトで取得されます。
名前 | 説明 |
---|---|
| ブール値。このサーバーがレプリケーションマスターに接続されたレプリケーションスレーブで、I/OとSQLスレッドの両方が実行中の場合は |
| ストレージエンジンに対しロールバック操作の実行を要求する1秒あたりの回数。 |
| データが入っているInnoDBバッファプールのページ数。 |
| InnoDBバッファプール内のフリーページ数。 |
| InnoDBバッファプールの総ページ数。 |
| InnoDBテーブルからデータが読み込まれる速度(バイト数/秒)。 |
| InnoDBテーブルにデータが書き込まれる速度(バイト数/秒)。 |
| ログバッファーが小さすぎたため、続行前にフラッシュされて待機が必要となった回数(待機回数/秒)。 |
| InnoDBテーブルの操作によって現在待機されている行ロック数。 |
| InnoDBテーブルの行ロックを取得する平均時間(ミリ秒単位)。 |
| InnoDBテーブルの操作が、行ロックの待機を必要とした回数(秒単位)。 |
|
|
| 開かれているファイル数。このカウントには、サーバーによって開かれた通常のファイルが含まれます。ソケットやパイプなどの他のタイプのファイルは含まれません。 |
| 開いているテーブル数。 |
| クエリキャッシュの空きメモリ量(バイト単位)。 |
| キャッシュから取得されたクエリの割合。 |
| 1秒あたりのキャッシュされていないクエリの数 ( |
| 使用されているクエリキャッシュメモリの割合。 |
| テーブルロックの要求がすぐに許可されず、待機が必要だった回数(秒単位)。 |
| クライアントが正しく接続を終了せずに終了したために中止された接続数。 |
| MySQLサーバーへの接続に失敗した回数(秒単位)。 |
| すべてのクライアントから受信したスループット(秒単位)。 |
| すべてのクライアントに送信されたスループット(秒単位)。 |
| サーバーの |
| 1秒当たりの接続試行回数。 |
| サーバーが起動してから同時に使用された最大接続数。 |
| 現在開いている接続数。 |
| スリープしていないスレッド数。 |
| 1秒あたりに実行されたCOMMITステートメントの数。 |
| 1秒あたりに実行されたDELETEステートメントの数。 |
| 1秒あたりに実行された複数テーブルの構文を使用するDELETEステートメントの数。 |
| 1秒あたりに実行されたINSERTステートメントの数。 |
| 1秒あたりに実行されたINSERT SELECTステートメントの数。 |
| 1秒あたりに実行されたREPLACE SELECTステートメントの数。 |
| 1秒あたりに実行されたROLLBACKステートメントの数。 |
| 1秒あたりに実行されたSELECTステートメントの数。 |
| 1秒あたりに実行された複数テーブルの構文を使用するUPDATEステートメントの数。 |
| 1秒あたりに実行されたUPDATEステートメントの数。 |
| 1秒あたりのプリペアードステートメントの現在の数。(ステートメントの最大数は、システム変数 |
| 1秒あたりにサーバーが実行するステートメントの合計数。 ストアドプログラム内で実行されるステートメントを含む。 |
| 1秒あたりにサーバーが実行するステートメントの数。クライアントが送信したステートメントのみに限る。 |
|
|
拡張メトリクス
extended_metrics
が有効化されている(設定ファイル
で1に設定されている)場合は、追加のメトリクスが取得されます。
名前 | 説明 |
---|---|
| ステートメントの実行中にサーバーによって作成されたディスク上の一時的な内部テーブルの数(秒単位)。 |
| mysqldが作成した一時ファイルの数(秒単位)。 |
| ステートメントの実行中にサーバーが作成した内部一時テーブルの数(秒単位)。 |
| 表から行が削除された回数(秒単位)。 |
| インデックスの最初のエントリが読み取られた回数(秒単位)。 |
| キーに基づいて行を読み取るリクエスト数(秒単位)。 |
| データファイルの次の行を読み込むリクエスト数(秒単位)。 |
| 固定位置に基づいて行を読み取るリクエスト数(秒単位)。 |
| テーブル内の行を更新するリクエスト数(秒単位)。 |
| テーブルに行を挿入するリクエスト数(秒単位)。 |
| 実行タイムアウトを超えたSELECTステートメントの数(秒単位)。 |
| クエリキャッシュ内の空きメモリブロックの数。 |
| クエリキャッシュヒットの数(秒単位)。 |
| クエリキャッシュに追加されたクエリの数。 |
| メモリ不足のためにクエリキャッシュから削除されたクエリの数(秒単位)。 |
| クエリキャッシュに登録されたクエリの数(秒単位)。 |
| クエリキャッシュ内のブロックの合計。 |
| インデックスを使用しないために、テーブルスキャンを実行するジョインの数(秒単位)。 |
| 参照テーブルで範囲検索を使用したジョインの数(秒単位)。 |
| 各行の後にキーの使用状況をチェックするキーのないジョインの数(秒単位)。 |
| 最初のテーブルの範囲を使用したジョインの数(秒単位)。 |
| 並べ替えアルゴリズムが実行しなければならなかったマージパスの数(秒単位)。 |
| 範囲を使って行われた並べ替えの数(秒単位)。 |
| ソートされた行数(秒単位)。 |
| テーブルをスキャンして行われた並べ替えの数(秒単位)。 |
| オープンテーブルのキャッシュルックアップのヒット数(秒単位)。 |
| オープンテーブルのキャッシュルックアップのミス数(秒単位)。 |
| オープンテーブルのキャッシュのオーバーフロー数(秒単位)。 |
| キャッシュに十分なスレッドがないため、新しい接続を処理するために作成する必要があるスレッドの割合。 |
| スレッドキャッシュ内のスレッド数。 |
| 接続処理のために作成されたスレッドの数。 |
innodbの拡張メトリクス
extended_innodb_metrics
が有効化されている(設定ファイル
で1に設定されている)場合は、追加のメトリクスが取得されます。
名前 | 説明 |
---|---|
| InnoDBバッファプール内の現在のダーティページ数。 |
| InnoDBバッファプールからページをフラッシュするリクエスト数(秒単位)。 |
| 先読みバックグラウンドスレッドによってInnoDBバッファプールに読み込まれ、その後、クエリによるアクセスなしに削除されたページ数(秒単位)。 |
| 先読みバックグラウンドスレッドによってInnoDBバッファプールに読み込まれたページ数(秒単位)。 |
| InnoDBによって開始された「ランダム」先読みの数(秒単位)。これは、クエリがテーブルの大部分をランダムにスキャンする場合に発生します。 |
| 論理的な読み取りリクエスト数(秒単位)。 |
| InnoDBがバッファプールから満たすことができず、ディスクから直接読み込まなければならなかった論理読み込みの数(秒単位)。 |
| バッファプール内で使用可能なクリーンページがなかったために、InnoDBへの読み書きが待機しなければならなかった回数(秒単位)。 |
| InnoDBバッファプールへの書き込み回数(秒単位)。 |
|
|
| 現在、保留中の fsync() 操作数。 |
| 現在、保留中の読み取り数。 |
| 現在、保留中の書き込み数。 |
| データ読み取りの回数(OSファイル読み取り)(秒単位)。 |
| データ書き込み回数(秒単位)。 |
| InnoDB redoログの書き込みリクエスト数(秒単位)。 |
| InnoDB redoログファイルへの物理的な書き込み回数(秒単位)。 |
| InnoDBが現在保持しているファイルの数。 |
| InnoDB redoログファイルに対して行われた |
| InnoDB redoログファイルに対する保留中の |
| InnoDB redoログファイルへの保留中の書き込み数(秒単位)。 |
レート | InnoDB redoログファイルに書き込まれたバイト数(秒単位)。 |
| InnoDB テーブルの操作によって作成されたページ数(秒単位)。 |
| InnoDBテーブルの操作によってInnoDBバッファプールから読み込まれたページ数(秒単位)。 |
| InnoDBテーブルの操作によって書き込まれたページ数(秒単位)。 |
| InnoDBテーブルから削除された行数(秒単位)。 |
| InnoDB テーブルに挿入された行数(秒単位)。 |
| InnoDBテーブルから読み込まれた行数(秒単位)。 |
| InnoDBテーブルで更新された行数(秒単位)。 |
myisamの拡張メトリクス
extended_myisam_metrics
が設定ファイルで有効化されている場合は、追加のメトリクスが取得されます。
名前 | 説明 |
---|---|
| 変更されたものの、まだディスクにフラッシュされていないMyISAMキーキャッシュ内のキーブロック数。 |
| 使用中のキーキャッシュの割合。 |
| MyISAMキーキャッシュからのキーブロックの読み取りリクエスト数(秒単位)。 |
| ディスクからMyISAMキーキャッシュへのキーブロックの物理読み込み回数(秒単位)。 |
| MyISAMキーキャッシュにキーブロックを書き込むリクエスト数(秒単位)。 |
| MyISAMキーキャッシュからディスクへのキーブロックの物理書き込み回数(秒単位)。 |
スレーブクラスタの拡張メトリクス
設定ファイルで拡張メトリクスフラグが有効化されており、cluster.slaveRunning
メトリックが1
を返す場合に取得される追加メトリクス。詳細については、MySQL文書を参照してください。
名前 | 説明 |
---|---|
| すべての既存リレーログファイルに対する合計バイト数。 |
| I/Oスレッドを停止させた最も最近のエラーのエラー番号。 |
| I/Oスレッドを停止させた最も最近のエラーのエラーメッセージ。 |
| SQLスレッドを停止させた最も最近のエラーのエラー番号。 |
| SQLスレッドを停止させた最も最近のエラーのエラーメッセージ。 |
| I/Oスレッドが開始され、マスターへの接続に成功したかどうかのステータス。値は、 |
| SQLスレッドが開始されているかどうかのステータス。値は |
| スレーブがマスターのバイナリログに記録されたときの、スレーブのクロックタイムとクエリのタイムスタンプの差(秒)。スレーブがマスターに正しく接続されていない場合、このメトリックは報告されません。 |
| I/Oスレッドが現在読み込んでいるマスターバイナリログファイルの名前。 |
| 現在のマスターバイナリログファイルにおいて、I/Oスレッドがどの位置まで読み込んだか。 |
| SQLスレッドにより実行された、最も最近のイベントを含むマスターバイナリログファイルの名前。 |
| SQLスレッドが読み込んで実行した現在のマスターバイナリログファイル内の位置であり、処理すべき次のトランザクションまたはイベントの開始点を表す。 |
インベントリ
MySQLインテグレーションは、SHOW GLOBAL VARIABLES
によって返されたMySQLノードの設定パラメーターを取得します。このデータは、Inventoryページのconfig/mysql
ソースで取得できます。
システムメタデータ
MySQLインテグレーションは、お使いのMySQLシステムについて以下のメタデータ属性を収集します。
名前 | 説明 |
---|---|
|
|
| MySQLサーバーのバージョン。 |
| 監視されているMySQLノードの役割に応じて |
ソースコード
MySQLインテグレーションはオープンソースソフトウェアです。つまり、ソースコードを参照して改善を送信したり、独自のフォークを作成して構築したりできます。
その他のヘルプ
さらに支援が必要な場合は、これらのサポートと学習リソースを確認してください:
- Explorers Hubでは、コミュニティからのサポートを受けたり、ディスカッションに参加したりすることができます。
- 当社サイトで答えを見つけて、サポートポータルの使用方法を確認してください。
- Linux、Windows、およびmacOS向けトラブルシューティングツールであるNew Relic Diagnosticsを実行してください。
- New Relicの とandドキュメント をご確認ください。