序文 binlog は、MySQL のすべての追加、削除、および変更ステートメントを記録するバイナリ ログ ファイルです。 binlog ログを通じて、データ復旧、マスタースレーブレプリケーションなどを実行できます。ご覧のとおり、この binlog があれば、mysql の完全なバックアップが保持されます。 特定のテーブルの変更を監視してから、何らかの操作を実行する必要があるという要件に頻繁に遭遇します。 テーブル内のデータが追加されるだけで、削除または変更されていない場合は、監視は比較的簡単です。最新の ID を定期的に照会できます。ただし、削除または変更操作が必要な場合は、テーブル全体をスキャンする必要があり、非常に非効率的です。テーブルが変更されたときに、監視のためにイベントをトリガーできると最適です。 これで、binlog を通じて完了できます。 binlog の変更を監視するだけで、ステートメントが実行されるたびに binlog に記録され、監視できるようになります。 Binlog はデフォルトで無効になっています。有効にするには、MySQL 構成ファイルを変更する必要があります。 Mac に brew によってインストールされた MySQL のデフォルトのインストール ディレクトリは /usr/local/Cellar で、バージョンは 5.7.21 です。 ご覧のとおり、ディレクトリ内に構成ファイルはありません。これは他のバージョンとは異なる場合があります。他のバージョンでは、ルート ディレクトリに my.ini または my.cnf ファイルがあったり、support-files に my-default.cnf ファイルがあったりしますが、このバージョンにはそれがありません。 設定ファイルを変更するには、自分で作成する必要があります。 /etc/ ディレクトリに次の内容の my.cnf ファイルを作成します。 [mysqld] サーバーID = 1 ログ bin = mysql bin binlog 形式 = ROW mysql-bin は単なる名前なので、任意の名前を使用できます。今後保存されるログファイル名は、mysql-bin.000001、mysql-bin.000002 になります。 binlog_format は ROW に設定する必要があることに注意してください。これは、STATEMENT モードまたは MIXED モードでは、Binlog は特定のデータなしで SQL ステートメントのみを記録および送信する (ログ サイズを削減するため) ため、データを保存できないためです。 次に、brew restart mysql で mysql を再起動します。次に、mysql -uroot -pコマンドでMySQLコンソールに入り、実行します。 '%log_bin%' のような変数を表示します。 上の矢印は my.cnf が設定されていない場合、下の矢印は my.cnf が設定されて再起動された後です。 次のようなコマンドもあります: binlog ログ ファイルを更新してログをフラッシュします # 更新後、新しい binlog ログが作成されます。 ログ ファイルをクリアし、マスターをリセットします。 最初の binlog ファイルの内容を表示するには 指定された binlog ファイルの内容を表示するには バイナリログ ファイルのリストを取得し binlog だけでは不十分で、binlog を監視するツールも必要です。次の記事: 運河 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。 以下もご興味があるかもしれません:
|
<<: Linux でスペースを含むファイルを削除する (ディレクトリではない)
>>: React でインデックスをキーとして使用することが推奨されないのはなぜですか?
序文このブログ記事が公開された後、何人かの友人からSQL Serverバージョンがあるかどうか尋ねら...
1. イメージをプルするdocker pull レジストリ.cn-hangzhou.aliyuncs...
1. はじめにページを作成しているときに、複数列のレイアウトに遭遇することがあります。各列の内容が異...
毎日jQueryプラグインを学ぶ - フローティングメニュー、参考までに、具体的な内容は次のとおりで...
目次元に戻すログUNDOログの生成と破棄UNDOログの保存元に戻すログ機能トランザクションの原子性の...
<TD> タグの属性は、テーブル内のセルのプロパティを設定するために使用されます。表 &...
:= と = の違い=設定および更新の場合にのみ、:= と同じ効果、つまり代入効果があり、それ以外の...
目次環境の準備環境の準備mariadbをアンインストールする rpm -qa | grep mari...
Linux サーバーに Docker をインストールした後、関連する公式 Docker イメージを...
追加するdocker run -it -name test -d nginx:latest /bin...
丁寧に掃除を始めましょう!未使用ボリュームの一覧docker ボリューム ls -qf dangli...
目次1. Promise とは何ですか? 2. なぜ Promise が存在するのでしょうか? 3つ...
mysql バッチで大量のデータを削除する1000万件のレコードを持つテーブル(syslogs)があ...
最近、インターネットのベテランと「広告」について議論したのですが、彼から非常に興味深い意見を聞きまし...
Linux で最も一般的に使用される重要なユーティリティの 1 つである Sudo は、ほぼすべての...