Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Monitorować tabelę MySQL pod kątem zmian w programie C#?

Jeśli zarówno aplikacja, jak i serwer bazy danych znajdują się na tym samym komputerze, możesz skonfigurować wyzwalacz w MySQL, który zapisuje do pliku dziennika PO WSTAWIENIU, AKTUALIZACJI, a następnie tworzy FileSystemWatcher aby obejrzeć ten plik dziennika. FileSystemWatcher wystrzeli zdarzenia, gdy plik jest zmieniany na które Twoja aplikacja może zareagować.

Wyzwalacz może wyglądać mniej więcej tak:

create trigger MyTable_Monitor
after insert, update on MyTable
for each row
begin
select * from new into outfile "path/to/table.log"
end

Jednym z problemów, które widzę w powyższym kodzie, jest to, że pliku wyjściowego nie można dołączyć (najlepiej, co mogę powiedzieć), więc możesz mieć problemy, jeśli w jednym wywołaniu jest wykonywanych wiele zapytań (lub nawet wiele zapytań wykonywanych jednocześnie przez różnych klientów). Wszelkie sugestie dotyczące ulepszeń są mile widziane.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy wartość null PHP nie jest równa wartości null MySQL?

  2. Obsługa integralności bazy danych

  3. Usuń pojedyncze cudzysłowy z where_in w codeigniter

  4. Używanie DISTINCT i COUNT razem w zapytaniu MySQL

  5. Jak całkowicie usunąć MySQL 5.7 z systemu Windows?