می تونی از binary log های MySQL استفاده کنی.
http://dev.mysql.com/doc/refman/4.1/en/binary-log.html
البته می تونی از Query log ها هم استفاده کنی، ولی فکر کنم همون binary log ها راحت تر باشه.
http://dev.mysql.com/doc/refman/4.1/en/query-log.html
ولی نهایتا باید خودت براش کد بزنی :)
نمونه یک باینری لاگ:
mysql> show binlog events;
show binlog events;
+------------------------+-----+------------+-----------+--------------+--------------------------------------------+
| Log_name | Pos | Event_type | Server_id | Orig_log_pos | Info |
+------------------------+-----+------------+-----------+--------------+--------------------------------------------+
| third-fl-71-bin.000001 | 4 | Start | 1 | 4 | Server ver: 4.1.1-alpha-log, Binlog ver: 3 |
| third-fl-71-bin.000001 | 79 | Query | 1 | 79 | use `test`; create table j2 (a int) |
| third-fl-71-bin.000001 | 137 | Query | 1 | 137 | use `test`; insert into j2 (a) values (3) |
| third-fl-71-bin.000001 | 201 | Query | 1 | 201 | use `test`; insert into j2 (a) values (9) |
| third-fl-71-bin.000001 | 265 | Query | 1 | 265 | use `test`; delete from j2 where a=3 |
+------------------------+-----+------------+-----------+--------------+--------------------------------------------+
5 rows in set (0.00 sec)
تو جدول بالا می بینی که فیلدی با نام Event_type داریم.
کافیه برنامه شما این بانک رو پیمایش کنه و فیلد های مربوطه رو برداره و در آخر، این بانک لاگ (که یک فایل مجزاست) رو reset (خالی) کنه.
فیلد هایی هم که انتخاب کرده، می تونه تو یک فایل sql بنویسه یا به سرور بفرسته.
ممنون میشم کد برنامه ای که چنین کاری رو می کرد، به احترام دوستانی که پاسخت رو دادند، اینجا بذاری :)
موفق باشید.