Heim >Backend-Entwicklung >PHP-Problem >Kann PHP Datenbankänderungen überwachen?

Kann PHP Datenbankänderungen überwachen?

(*-*)浩
(*-*)浩Original
2019-10-18 13:50:573695Durchsuche

Kann PHP Datenbankänderungen überwachen?

Wie überwacht man Datenänderungen in der Datenbank?

Notwendigkeit, Echtzeit-Push-Nachrichten zu implementieren. Das Front-End verwendet Websocket und das Back-End verwendet PHP und Node.js. (Empfohlenes Lernen: PHP-Video-Tutorial)

Das aktuelle Problem besteht darin, dass das Frontend Datenänderungen in einer Datentabelle auf der Serverseite überwacht. Sowohl PHP Socket als auch NodeJS Socket.io überwachen nur Ereignisse am Socket-Port, aber wie erhält man Änderungen in der Datenbank?

Diese Datentabelle kann vom Benutzer auf der Socket-Seite aktualisiert werden oder nicht. Manchmal können die Daten vom Administrator geändert werden. Wie hört also der Socket auf der Serverseite auf Datenänderungsereignisse und schiebt sie dann zurück an das Frontend? !

Die Datenbank kann MySQL oder Mongo sein.

Lösung:

Auf Anwendungsebene werden im Allgemeinen Interceptoren und andere Methoden zur Implementierung der Änderungsüberwachung verwendet. Diese Methode kann jedoch das Problem der direkten Änderung nicht lösen die Datenbankseite.

Auf Datenbankebene gibt es im Allgemeinen drei Methoden:

1. Kommerzielle Datenbanken wie Oracle bieten einen Ereignisüberwachungsmechanismus, der die verbindende Partei proaktiv über Datenänderungen informieren kann ;

2. Verwenden Sie Trigger, setzen Sie Trigger für Tabellen, die überwacht werden müssen, und rufen Sie dann PHP-Funktionen auf, um externe Mechanismen auszulösen überwacht werden, aber nur in die Protokolltabelle schreiben.

4: Überwachen oder scannen Sie das Datenbankprotokoll.

Das obige ist der detaillierte Inhalt vonKann PHP Datenbankänderungen überwachen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn