यदि एप्लिकेशन और डेटाबेस सर्वर दोनों एक ही मशीन पर हैं, तो आप MySQL में एक ट्रिगर सेट करने में सक्षम हो सकते हैं जो INSERT, UPDATE के बाद एक लॉग फ़ाइल में लिखता है और फिर एक FileSystemWatcher उस लॉग फ़ाइल को देखने के लिए। FileSystemWatcher फायर करेगा ईवेंट जब फ़ाइल बदली जाती है जिस पर आपका आवेदन प्रतिक्रिया दे सके।
ट्रिगर कुछ इस तरह दिख सकता है:
create trigger MyTable_Monitor
after insert, update on MyTable
for each row
begin
select * from new into outfile "path/to/table.log"
end
उपरोक्त कोड के साथ एक समस्या जो मुझे दिखाई दे रही है, वह यह है कि आउटफाइल को जोड़ा नहीं जा सकता है (सबसे अच्छा मैं बता सकता हूं) इसलिए यदि एक कॉल में कई क्वेरी निष्पादित की जाती हैं (या यहां तक कि विभिन्न क्लाइंट द्वारा एक साथ कई क्वेरी निष्पादित की जाती हैं) तो आपको समस्या हो सकती है। सुधार के लिए किसी भी सुझाव का स्वागत है।