MongoDB oplog を追跡できるのと同じ方法で、MySQL/MariaDB でデータベースの変更をリッスンする方法はありますか? このオンラインで情報を見つけるのに苦労しています。おそらく、MySQL ではなく Postgres でのみ利用可能です。
質問する
820 次
3 に答える
4
プラン A: 「一般ログ」をオンにします。すべてのクエリがそのログに書き込まれます。すぐにオフにしてください。そうしないと、ディスクがいっぱいになります。
プラン B: binlog をオンにします。これには、すべての「書き込み」が含まれます。そのログの内容を表示するプログラムがあります。
于 2016-02-02T01:56:34.527 に答える
2
このmysqlbinlog
ユーティリティを使用して、バイナリ ログを追跡できます。サーバーの変更をリモートで追跡するには、次のコマンドを使用します。
mysqlbinlog -R -t --stop-never -h <hostname> -u <user> -p <binlog file name>
binlog ファイル名を取得するSHOW MASTER STATUS
には、テーリングしているサーバーで実行します。行イベントをデコードする場合は、-v --base64-output=decode-rows
フラグを追加します。
mysqlbinlog
バイナリログが有効になっている必要があります。log-bin
構成ファイルに追加することで有効にできます。log-bin
ファイル名は、値として追加するか、 を使用して制御できますlog-bin-basename
。たとえば、log-bin=my-binlog
を生成しmy-binlog.000001
ます。
于 2018-06-29T20:45:38.827 に答える