MySQL は、さまざまなアプリケーション シナリオで広く使用されているオープン ソースのリレーショナル データベース管理システムです。 MySQL を使用する場合、データ ログ分析は、データベースのパフォーマンスの最適化や問題のトラブルシューティングなどに役立つ非常に重要なテクノロジです。この記事では、読者が MySQL をより効果的に使用できるように、一般的に使用されるデータ ログ分析テクニックをいくつか紹介します。
スロー クエリ ログは、MySQL の非常に重要なタイプのログで、実行時間が指定されたしきい値を超えた SQL ステートメントを記録できます。遅いクエリのログを分析することで、データベースのパフォーマンスのボトルネックの原因を特定し、最適化できます。
まず、MySQL 設定ファイルでスロー クエリ ログ機能を有効にする必要があります。次の設定を my.cnf ファイルに追加します:
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
long_query_time = 2
上記の設定は、スロー クエリ ログ機能が有効になっていて、スロー クエリ ログ ファイルが /var/log/mysql/mysql-slow.log ファイルに書き込まれ、2 秒を超えるクエリを実行するステートメントが記録されることを示します。ここでのクエリ時間のしきい値は、実際の状況に応じて調整する必要があります。
設定が完了すると、MySQL は実行時間がしきい値を超えた各 SQL ステートメントをスロー クエリ ログ ファイルに記録します。次に、ツール (mysqldumpslow など) を使用してログを分析し、クエリ ステートメントのボトルネックを見つけます。
たとえば、次はスロー クエリ ログのサンプルです:
SET timestamp=1571826641;
SELECT * FROM user WHERE id > 10000;
上記のログは、クエリの実行時間が 2.34 秒で、16523 行のデータがスキャンされたが、クエリで返されたデータは 1 行のみであることを示しています。終わり。データベースのパフォーマンスは、クエリを最適化し、スキャンされる行数を減らし、クエリ ロジックを最適化することによって改善できます。
MySQL のバイナリ ログ (binlog) は、データベースの変更操作を記録するログです。これには、追加、削除、変更、そしてクエリ。 binlog ログを分析することで、履歴データを復元し、操作プロセスを再現できます。
次のコマンドを使用して、MySQL の現在の binlog ログのファイル名と場所を表示できます:
mysql> SHOW MASTER STATUS;
#ファイル | 位置 |
---|---|
107 |
2019 - 10-23T14:50:41.301325Z 0 [エラー] プラグイン 'InnoDB' をストレージ エンジンとして登録できませんでした。
2019-10-23T14:50:41.301325Z 0 [エラー] プラグインの初期化に失敗しました。
2019 - 10-23T14:50:41.301325Z 0 [ERROR] Aborting
以上がMySQL のデータログ分析スキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。