Alle Abfragen gehen Sie in die "Wartezeit für die Tabelle" Stand auf einer Amazon RDS-instance
Wir haben derzeit Folgendes problem, das verursacht unsere Anwendung zu gehen. Alle Abfragen, wir gehen in eine "Wartezeit für die Tabelle" Staat und dort zu bleiben, wodurch die MySQL-Server-verbindungen verwendet werden.
Wir untersucht das Problem und erfuhr, was es bedeutet, nach dem MySQL-Handbuch
Wartenden für Tabellen, Wartezeit für die Tabelle
Den thread bekam eine Benachrichtigung, dass die zugrunde liegende Struktur für eine
Tabelle wurde geändert, und es braucht, um öffnen Sie die Tabelle, um die neue
Struktur. Jedoch, öffnen Sie die Tabelle, es muss warten, bis alle anderen
threads geschlossen haben, um die Tabelle in Frage stellen.Diese Benachrichtigung erfolgt, wenn ein anderer thread verwendet hat FLUSH TABLES
oder eine der folgenden Aussagen auf die Tabelle zu Frage: FLUSH
TABLES tbl_name, ALTER TABLE, RENAME TABLE, REPAIR TABLE, ANALYZE
TABLE oder OPTIMIZE TABLE.
Begutachtete ich unsere Laufenden Prozesse mit SHOW PROCESSLIST und fanden keine Data Definition Language statements oder Aussagen, wo in der obigen Liste.
Was sonst könnte der Grund HIERFÜR sein?
- Was ist Replikation threads?
- Unser Systemadministrator meinte, dass die Replikation nicht haben nichts zu tun, denn es ist nur eine rotierende Protokolldatei (aber ich könnte ihn bitten, wieder). Wir könnten es verwenden, wie ein backup, aber derzeit wird es nicht so bald, wie Sie versuchen, zu schreiben, also ohne Erfolg... Wir versuchen derzeit, um die Daten exportieren zu einer anderen Instanz außerhalb von RDS, aber das kann eine Weile dauern ... Aber danke für deine Hilfe, Tom 😀
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wir haben nicht wirklich eine Antwort finden, was das problem verursacht, aber es scheint, wie die automatische backup-Funktion von amazon war der Schuldige. Wir sind jetzt wieder läuft nach der Kontaktaufnahme mit dem Amazon-support.
Ich habe das gleiche problem heute. Endlich habe ich es gefunden ist, verursacht durch die Gleichzeitigkeit einer großen Abfrage und den backup-Prozess. Mysqldump-mit –master-Daten verursachen, flush table-Befehl.
Dies sehen
http://bugs.mysql.com/bug.php?id=35157.
Meine situation ist:
Der flush-Befehl wartete auf die große Anfrage.
Andere querys warteten, dass der flush table-Befehl wurde abgeschlossen, so dass Sie blockiert wurden.
Wenn die big-Abfrage abgeschlossen ist, Dinge, die rechts ging.
Also ich denke, man könnte eine große Abfrage zu dieser Zeit.