1. はじめに 数日前、開発仲間から、フィールドを同じ値に更新すると binlog が記録されるかどうか尋ねられました。私は、記録されないと答えました。 厳密に言えば、シナリオを区別する必要があるため、この答えは不正確です。更新ステートメントを binlog に記録するかどうかは、binlog_format の設定によって異なります。特定の状況では、練習をすれば完璧になります。 2回目のテスト 2.1 binlog_formatはROWモードです 2.2 binlog_formatはSTATEMENTモードです binlog の内容を解析し、更新ステートメントを完全に記録します。 2.2 binlog_format は MIXED モードです row_format が mixed または statement 形式の場合、binlog のサイズが変わります。データが実際に更新されたかどうかに関係なく、MySQL は実行された SQL を binlog に記録します。 3つの結論 行ベース モードでは、サーバー レイヤーは更新するレコードを照合し、新しい値が古い値と一致していることを検出します。レコードは更新されず、binlog を記録せずに直接戻ります。 MySQL は、ステートメントまたは混合形式に基づいて更新ステートメントを実行し、更新ステートメントを binlog に記録します。 では、なぜ statement と mixed は完全な SQL ステートメントを記録するのでしょうか?これについては次の記事で説明します。ソース コードを解析する必要があり、Clion を使用して MySQL デバッグ環境をコンパイルすることにまだ成功していないためです。 上記は、MySQL|update フィールドに同じ値がある場合に、binlog の詳細が記録されるかどうかを確認する例です。MySQL update フィールドの詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Alibaba Cloud Nginx はドメイン名アクセス プロジェクトを実装するために https を設定します (グラフィック チュートリアル)
>>: Vue カプセル化に基づくプルダウン更新およびプルアップ読み込みコンポーネント
目次1. FastDFS の概要1. はじめに2. FastDFSストレージ戦略3. FastDFS...
目次文章LOCKパラメータアルゴリズムパラメータCOPY TABLE プロセスIN-PLACEプロセ...
少し前に、「ORACLE でコミットされていないトランザクションの SQL ステートメントを見つける...
Zabbix バージョン 3.0 以降、Zabbix サーバー、Zabbix プロキシ、Zabbix...
この記事では、MySQL の文字列インターセプト関連の機能を紹介します。具体的な内容は以下のとおりで...
ここ2日間Javaを復習するつもりなので、練習にdubboを使ってショッピングモールプロジェクトを書...
序文SpringBoot + Vueのフロントエンドとバックエンドを分離したプロジェクトをどのように...
歴史ルート履歴モードとは、HTML5 の履歴 API を使用してクライアント側ルーティングを実装する...
目次背景データ型を決定する方法は何ですか? 1. typeof を使用して基本データ型を決定します。...
関連記事:ユーザーエクスペリエンスのためのウェブサイトデザイン今朝、GMail がまた不調になり、接...
1. VMwareのダウンロードとインストールリンク: https://www.jb51.net/s...
2 日前、Raspberry Pi サーバーを Ubuntu 20 にアップグレードしました。今日...
1. ファイルサーバーについてプロジェクトでは、公開ソフトウェアやデータをプロジェクト チーム メン...
この記事では、jsネイティブカルーセルプラグインの具体的なコードを参考までに共有します。具体的な内容...
この記事では、ドラッグアンドドロップをJSオブジェクト指向で実装するための具体的なコードを参考までに...