2016-07-08 2 views
0

Ich versuche, ein mysqldump entlang der Linien zu tun:MySQL-Dump für die Metadaten der Tabelle warten sperren

mysqldump -u root -p db> C: \ Filelocation

Allerdings, wenn ich den Befehl es nie beendet. Ich habe daher verwendet: SHOW PROCESSLIST; um zu sehen, was vor sich ging. Im Status meiner Speicherauszugsabfrage lautet der Status: "Warten auf Tabellenmetadatensperre". Es gibt nur zwei andere Prozesse, die auf der Datenbank ausgeführt werden (neben dem Befehl SHOW PROCESSLIST), die beide inaktiv sind.

Ich habe versucht, die anderen beiden Prozesse zu töten und dann die Dump zu tun, die für mich funktionierte. Ich möchte jedoch, dass der Speicherauszug funktioniert, unabhängig davon, ob die beiden Prozesse funktionieren. Gibt es eine Möglichkeit, das zu tun?

Antwort

0

Managed es am Ende, um herauszufinden, ...

Alles, was ich tun musste, war hinzufügen: --single-Transaktion = TRUE zu Beginn meiner ursprünglichen Abfrage. IE:

Mysqldump --single-Transaktion = TRUE -u root -p DB> C: \ Filelocation

die den Prozess ohne Tabellen zu sperren, die ausgeführt werden können.

Verwandte Themen