2017-05-15 1 views
0

Einige der Anforderungen an meine Anwendung schlagen jeden Tag fehl. Ich möchte jedes Mal wissen, dass alle Abfragen in Deadlocks gingen.Suchen nach fehlgeschlagenen Anforderungen und Abfragen, die in den Deadlock gehen

Ich verwende MySQL 5.6 auf AWS.

FYI, Werkzeugvorschläge sind ebenfalls willkommen.

+0

Bitte geben Sie Details der Abfragen und Server-Log-Datei –

+0

Ich bin weg von der Maschine. Arbeiten am Handy. Mach das so schnell wie möglich. Außerdem suche ich kein Tool, das mir sagen würde, welche Abfragen tatsächlich einen Deadlock oder irgendeine Tabelle erzeugen. – xachela

Antwort

0

Sie können Deadlock-Informationen direkt von MySQL mit der Abfrage "show engine innodb status" erhalten, die Ihnen die 2 Transaktionen zeigt, die am Deadlock beteiligt sind.

Ich persönlich kann das nicht in einer High-Load-Datenbank tun. So verwende ich Monyog, die eine dedizierte Monitorgruppe "InnoDB Deadlocks" in der Registerkarte Monitore hat, die Ihnen Mail-Alarm senden wird, falls ein Deadlock auftritt. Sie können die Informationen von den Zählern "New Deadlock Detected" und "Latest Detected Deadlock" erhalten. "Neuer Deadlock erkannt" gibt an, ob ein neuer Deadlock von "SHOW ENGINE INNODB STATUS" zwischen den letzten beiden Datenabrufen gemeldet wurde, und "Letzter Deadlock erkannt" zeigt Informationen über den letzten gefundenen Deadlock an (falls vorhanden).

Verwandte Themen