「失われた」情報を取得するために使用する必要のある1GMySQLbinlogファイルが7つあります。ログから特定のINSERTステートメントを取得するだけで済みます(たとえば、ステートメントが「INSERT INTO table SETfield1 =」で始まる場合)。mysqlbinlogを実行するだけで(データベースごとに--short-formを使用している場合でも)、数百メガバイトのテキストファイルが得られるため、他のプログラムで解析することはほとんど不可能です。
ログから特定のSQLステートメントを取得する方法はありますか?補助的な情報(タイムスタンプ、自動インクリメント番号など)は必要ありません。特定の文字列に一致するSQLステートメントのリストが必要です。理想的には、次のようなsqlステートメントのみをリストしたテキストファイルが必要です。
INSERT INTO table SET field1='a';
INSERT INTO table SET field1='tommy';
INSERT INTO table SET field1='2';
mysqlbinlogをテキストファイルに対して実行し、文字列に基づいて結果を解析することでそれを取得できますが、テキストファイルが大きすぎます。実行したスクリプトがタイムアウトし、テキストエディタで開くことができなくなります。
よろしくお願いします。