MySQLには次の7種類のログファイルがあります。
- やり直しログ(やり直しログ):トランザクションの耐久性を確保します。トランザクションの開始後、実行中に変更されたデータは徐々にログバッファバッファに書き込まれ、ディスクにフラッシュされます。データページの整合性を確保するために、二重書き込みバッファを使用して2回書き込むことができます。
- ロールバックログ(元に戻すログ):トランザクションのアトミック性を確保します。マルチバージョンの同時制御読み取りを提供します。各変更レコードは元に戻すログを記録し、roll_pointerを使用して元に戻すログをリンクリストに文字列化してバージョンチェーンを形成します。
- バイナリログ(binlog):マスタースレーブレプリケーションを実現するために使用されます。メインライブラリのデータが変更された後、binlogが記録され、スレーブライブラリによって読み取られます。
- リレーログ:マスタースレーブレプリケーションを実装するために使用されます。メインライブラリのbinlogはライブラリから読み取られ、リレーログに書き込まれます。SQLスレッドは、リレーログを再生することにより、データをローカルデータに書き込みます。
- 一般ログ:デフォルトで無効になっており、サーバーが受信したすべてのクエリまたはコマンドを記録します。
- 遅いクエリログ(遅いクエリログ):実行に時間がかかりすぎてインデックスを使用しない成功したクエリステートメントを記録します
- エラーログ(errorlog):デフォルトで閉じられます。エラーログには、mysqldの開始と停止、およびサーバーの操作中に発生したエラーに関する関連情報が記録されます。