データベースにデータを保存するために使用されるファイルはデータ ファイルと呼ばれ、ログ ファイルはログ ファイルと呼ばれます。また、それぞれの読み取りと書き込みがディスクに直接アクセスすると、パフォーマンスが非常に悪くなるため、データベースにはキャッシュがあり、データ キャッシュはデータ バッファ、ログ キャッシュはログ バッファです。 SQL実行順序update table set c=c+1 where id = 2 などの更新ステートメントを実行する場合、実行順序は次のようになります。
ビンログ何ですかバイナリログはアーカイブログまたはバイナリログとも呼ばれます。MySQL Serverレベルに属し、データベースのテーブル構造とテーブルデータの変更を記録するために使用されます。簡単に言えば、挿入、削除、更新など、変更された各SQLステートメント(もちろんSQLだけでなく、トランザクションID、実行時間など)を保存するものと言えます。 いつ生産されるのかトランザクションがコミットされると、トランザクション内のすべての SQL ステートメントが特定の形式で一度に bin ログに記録されます。 何の役に立つんだ主な機能は2つあります: マスタースレーブレプリケーションとデータリカバリ
ディスクはいつドロップされますか?innodb_flush_log_at_trx_commit と sync_binlog の区別 バイナリログはsync_binlogパラメータに依存します
ファイルログモードビンログには、行、ステートメント、混合の3つのファイル記録モードがあります。
利点: 各データ行の変更内容を明確に記録し、マスター スレーブ データの一貫性を完全に保証できます。欠点: テーブルの変更などのバッチ操作中に大量のログが生成されます。
利点: ログデータの量が少なく、ディスクIOが削減され、ストレージとリカバリ速度が向上します。欠点: SQL文に**now()**などの関数が含まれている場合など、マスターとスレーブの不整合が発生する場合があります。
再実行ログ何ですかREDO ログは、Redo ログと呼ばれます。これは、InnoDB ストレージ エンジン レイヤーのログです。特定の行または複数の行がどのように変更されたかではなく、物理ページの変更情報を記録します。 いつ生産されるのかトランザクションが開始されると、REDO ログが書き込まれます。 REDO ログは、トランザクションがコミットされたときにはディスクに書き込まれませんが、トランザクションの実行中にディスクに書き込まれます。 何の役に立つんだデータの回復に使用できます。トランザクション開始後にREDOログがディスクに書き込まれ、シーケンシャルIOなので書き込み速度が速いです。サーバーの電源が突然失われた場合、InnoDB エンジンは REDO ログを使用してデータベースを電源障害前の時点に復元し、データの整合性を確保します。 ディスクはいつドロップされますか? InnoDB は、まずログをログ バッファーに書き込み、次にログをログ バッファーから OS バッファーにフラッシュし、最後にファイル システムの fsync 関数を呼び出してログをディスクにフラッシュします。 REDOログの書き込みタイミングは、パラメータ
MySQL がクラッシュしてもデータが失われないため、一般的な値は 2 です。サーバー全体がクラッシュした場合にのみ、1 秒分のデータが失われます。 bin ログと redo ログ上記の紹介を読んだ後、bin ログと redo ログは非常に似ていると感じました。どちらもデータの変更を記録し、リカバリに使用できます。実際のところ、両者の間にはまだ明らかな違いが残っています。
データベース全体が削除された場合、REDO ログを通じて復元できますか? いいえ! REDO ログはトランザクションのデータ変更を保存することに重点を置いているため、メモリ内のデータがディスクにフラッシュされると、REDO ログ内のデータには実際には参照値がなくなります。さらに、REDO ログは履歴データを上書きするため、それを通じてすべてのデータを回復することは不可能です。 元に戻すログMySQLトランザクションログの詳細な分析 何ですかUNDO ログはロールバック ログと呼ばれ、InnoDB ストレージ エンジン レイヤーに属します。データの各行を記録する論理ログです。データを変更すると、元に戻すログが生成されます。データが挿入されると、元に戻すログには対応する削除ログが記録され、その逆も同様であると考えられます。 いつ生産されるのかトランザクションを開始する前に、現在のバージョンのUNDOログを生成します。 何の役に立つんだ主な機能: ロールバックとマルチバージョン同時実行制御 (MVCC) を提供する
以上がMySQLログ関連知識のまとめの詳しい内容です。MySQLログについてさらに詳しく知りたい方は、123WORDPRESS.COMの他の関連記事もぜひご覧ください! 以下もご興味があるかもしれません:
|
<<: Nginx+tomcat ロードバランシングクラスタの実装方法
>>: ウェブページ HTML 順序付きリスト ol と順序なしリスト ul
成果を達成するまずHTMLを使って基本的なフレームワークを構築します <本文> <...
序文データ中心のアプリケーションの場合、データベースの品質はプログラムのパフォーマンスに直接影響する...
目次序文関連資料成果を達成する実装手順序文Openlayer には独自の拡張プラグイン ol-ext...
まずサンプルコードを見てみましょう: 1. 共通パラメータ tcpdump -i eth0 -nn ...
この記事では、マスク レイヤーの中空化を実現する 4 つの方法を紹介します。みんなと共有し、自分用の...
純粋なCSS3で蝶が羽ばたく様子を再現。まずはその効果をご覧ください どうですか?効果はかなりいいで...
Ethereum 上で DApps を開発したことがある場合は、フロントエンド JavaScript...
1. 背景Docker サービスが開始されると、デフォルトで docker0 ブリッジが作成され (...
前書き: Docker のポート マッピングは、多くの場合、Docker Run コマンド中に -p...
説明: テキストエリアの値の改行を新しい行に変更しますコードをコピーコードは次のとおりです。 <...
<br />インターネットは絶えず変化しており、BusinessWeek.com は専門...
目次1- エラーの詳細2-シングルソリューション2.1-ディレクトリ C:\Windows\Syst...
EXPLAIN は、MySQL がインデックスを使用して選択ステートメントを処理し、テーブルを結合す...
赤い封筒の揺れ効果を実現するには要件があります。これまでやったことがないので、記録しておきます。ヘヘ...
現在、新しいアプリプロジェクトを開発中です。私にとっても初めてのアプリ開発です。チームで調査と検討を...