問題タブ [mysqlbinlog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
477 参照

mysql - 1548 [警告] BINLOG_FORMAT = STATEMENT であるため、ステートメント形式を使用して安全でないステートメントがバイナリ ログに書き込まれました

簡単なステートメントを実行すると、次の警告が表示されました。なぜそれが表示されたのか興味がありました。

Table1構造は次のとおりです。

ログからの完全なエラー:

2015-02-17 16:10:08 1548 [Warning] Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it invokes a trigger or a stored function that inserts into an AUTO_INCREMENT column. Inserted values cannot be logged correctly. Statement: UPDATETable1 SETCity ='Miami', ExpedDate ='201227', User ='JDoe', UpdDate ='2015-02-17 16:11:25' WHEREid= 61

0 投票する
2 に答える
1003 参照

mysql - MySQL でトリガーを使用してユーザー情報を取得する

タイトルの通り、MySQL で SQL ステートメントを実行しているユーザーの情報を取得したいと考えています。たとえば、SQL ステートメントが「work」というユーザーによって実行された場合、MySQL で実際に実行される前に、ユーザー名とホストをトリガーで取得するにはどうすればよいでしょうか。

実際には、MySQL で DELETE などのアクションを監視したいだけです。また、SQL ステートメントを実行したユーザー名とホストを binlog に記録できるかどうかもわかりません。

0 投票する
5 に答える
26329 参照

mysql - mysql バイナリログの読み方

データベースの変更に関する通知を取得するために、mysql bin ログを追跡するサービスを作成したいと考えています。

mysql bin ログを ROW 形式で読み取って解析するオープン ソース ライブラリはありますか?

0 投票する
0 に答える
39 参照

mysql - mysql semi-repl がタイムアウトしないようにする方法は?

MySQL 5.5 以降、semisyncがありますが、 semisync ACKタイムアウトを受信すると semisync がオフになります。タイムアウトしない方法はありますか?

mariadb rpl_semi_sync_master_timeoutの変数を見つけました。mysqlにもあります

したがって、これを 1844674407370955161 に設定すると、半同期がタイムアウトしないようにすることができます。

0 投票する
1 に答える
2284 参照

mysql - 最初のファイル名がわからない場合にすべてのリモート mysql バイナリ ログ ファイルを取得する方法 (リモート サーバーでのローテーションのため)

どんなガイダンスも大歓迎です

mysqlbinlog を使用して、リモート サーバーからバイナリ ログをダウンロードします (開いている唯一のプロトコルであるため、scp ではなく mysqlbinlog である必要があります)。

完全バックアップは 24 時間ごとに行われるため、リモート サーバーは 2 日後にログをローテーションするように設定されています。

バイナリログが最初に開始されたとき、ファイル名は mysql-bin.000001 で、crontab コマンドは正常に実行されました。

mysqlbinlog mysql-bin.000001 --ssl=0 --read-from-remote-server --host=xxxxxxxxxxxx --user=xxxxxxxx --password=xxxxxxxx --raw --to-last-log --result-file =/opt/tb_mysql_backup_binary_logs/production/

現在、ログのローテーションにより、ログのファイル名が ...bin.00008 から始まるようになり、コマンドはもちろん失敗します。mysql を手動で入力して SHOW BINARY LOGS を実行できることはわかっています。

しかし、とにかく「最初の名前を知らなくても、最初から最新までのすべてのログファイルを要求する」ことができますか?

乾杯キット

0 投票する
1 に答える
1226 参照

amazon-web-services - AWS RDS からスキーマが異なる別の AWS RDS にデータを同期する方法

Mysql RDS1 と、スキーマが異なる別の Mysql RDS2 があります。

RDS1 の変更をすぐに Mysql RDS2 に同期する必要があります。

作成、挿入、更新、および削除によってデータが変更される場所

RDS1 と RDS2 の両方が有効であり、差分アプリに統合されています。

参照しました: https://aws.amazon.com/blogs/aws/fast-easy-free-sync-rds-to-redshift/

しかし、私の問題に対する適切な解決策をまだ探しています。

誰でも助けることができますか?