ホームページ  >  記事  >  データベース  >  mysql ログ ファイルは何に使われますか?

mysql ログ ファイルは何に使われますか?

青灯夜游
青灯夜游オリジナル
2019-05-06 11:37:085047ブラウズ

mysql ログ ファイルの機能: 1. 物理データ ページの変更情報を記録できる; 2. データをトランザクション前の状態に論理的に復元できる; 3. バイナリ ファイル操作の形式でデータベースを記録できる; 4. エラー関連情報を記録できます; 5. メインサーバーなどのバイナリファイルからイベントを取得できます。

mysql ログ ファイルは何に使われますか?

推奨: "mysql チュートリアル"

MySQL ログ ファイルは次のように分割できます: REDO ログ ( REDO ログ)、ロールバック ログ(UNDO ログ)、バイナリ ログ(binlog)、エラー ログ(errorlog)、スロー クエリ ログ(スロー クエリ ログ)、一般クエリ ログ(ジェネラル ログ)、リレー ログ(リレー ログ)。次の記事では、これらの MySQL ログ ファイルについて簡単に説明します。

1. REDO ログ (REDO ログ)

REDO ログとは、物理データページの変更情報を記録する物理形式のログです。 REDO ログ ファイルの物理ファイルに順次書き込まれます。

REDO ログにより、トランザクションの耐久性が保証されます。これにより、障害時にダーティ ページがディスクに書き込まれるのを防ぎ、mysql サービスの再起動時に、REDO ログに基づいて REDO が実行され、トランザクションの耐久性が実現されます。

2. ロールバックログ(アンドゥログ)

ロールバックログは論理形式のログで、アンドゥ実行時に論理形式からのみデータが転送されます。 REDO ログとは異なり、物理ページ上で動作するのではなく、トランザクション前の状態に復元されます。

ロールバック ログには、トランザクション前のデータのバージョンが保存され、ロールバックに使用できます。また、マルチバージョン同時実行制御読み取り (MVCC)、つまり非ロック読み取りを提供することもできます。

3. ビンログ (binlog)

バイナリ ログは、データベース内の操作をバイナリ ファイルの形式で記録する論理形式のログですが、クエリ ステートメントは記録しません。 。これは、単に実行されたトランザクション内の SQL ステートメントと考えることができますが、SQL ステートメントほど単純ではなく、実行された SQL ステートメントの逆の情報 (追加、削除、変更) が含まれています。 delete自体とその逆のinsert; updateはupdate実行前後のバージョン情報に相当し、insertはdeleteとinsert自体の情報に相当します。

バイナリ ログはレプリケーションに使用できます。マスター/スレーブ レプリケーションでは、スレーブ ライブラリはマスター ライブラリのバイナリ ログを使用して再生し、マスターとスレーブの同期を実現します。データベースのポイント イン タイムの復元に使用されます。 。

4. エラー ログ (errorlog)

エラー ログには、mysqld の起動と停止、およびサーバーの動作中に発生したエラーに関する情報が記録されます。 。デフォルトでは、システムのエラーログ機能はオフになっており、エラーメッセージは標準エラー出力に出力されます。

5. スロー クエリ ログ (スロー クエリ ログ)

スロー ログは、実行に時間がかかりすぎてインデックスを使用しないクエリ ステートメントを記録し、エラーを報告します。 select、update、delete、insert ステートメントの場合、低速ログには正常に実行されたステートメントのみが記録されます。

6. 一般クエリ ログ (一般ログ)

は、クエリやコマンドが正しいか間違っているかに関係なく、サーバーが受信したすべてのクエリやコマンドを記録します。構文エラーが含まれている場合、一般ログには {Time, Id, Command, Argument} の形式で記録されます。 mysql サーバーは継続的にログを記録する必要があるため、一般ログをオンにすると、多くのシステム オーバーヘッドが発生します。したがって、Mysql はデフォルトで一般ログをオフにします。

7. リレー ログ (リレー ログ)

リレー ログはバイナリに似ており、レプリケーション アーキテクチャで使用でき、スレーブ サーバーはイベントを取得するためにマスターサーバーのバイナリファイルから使用されます。

注:

REDO ログとロールバック ログはトランザクション操作と密接に関連しており、バイナリ ログもトランザクション操作と関連しています。これら 3 種類のログは次のとおりです。 MySQL でのトランザクション操作を理解することは非常に重要です。

以上がmysql ログ ファイルは何に使われますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。