Heim  >  Artikel  >  Datenbank  >  So verwenden Sie Mysqlcheck zum Überprüfen und Reparieren, ausführliche Erläuterung der Optimierung von Tabellen

So verwenden Sie Mysqlcheck zum Überprüfen und Reparieren, ausführliche Erläuterung der Optimierung von Tabellen

黄舟
黄舟Original
2017-03-20 14:00:522979Durchsuche


mysqlcheck ist ein mit MySQL geliefertes Tool. Seine Funktion besteht darin, die 保养-Tabelle zu überprüfen, zu analysieren, zu reparieren und zu optimieren. Im Folgenden finden Sie eine Einführung in die einfache Verwendung des MySQLcheck-Tools.

Die folgenden Beispiele basieren auf dem Betriebszustand der MySQL 5.6-Version (MySQLCheck ist ein Online-Tool). Der Grad der Unterstützung dieses Befehls ist unterschiedlich (bezogen auf Überprüfen, Reparieren, Analysieren, Optimieren). Der folgende Inhalt ist eher betriebsbereit und basiert hauptsächlich auf der Innodb-Engine.

Tipp: OPTIMIZE kann bei der Arbeit mit großen Tabellen viel Zeit in Anspruch nehmen. Wenn Sie nicht wissen, dass OPTIMIZE in der Regel nicht in innodb verwendet wird, lesen Sie bitte „Verwenden von MySQL“. Tabellen OPTIMIEREN? Für InnoDB? Stoppen Sie eine bestimmte Tabelle. Beachten Sie, dass sie in der Shell und nicht in der interaktiven Umgebung von MySQL ausgeführt wird. Wenn die Anwendung dies auffordert Wenn eine Tabelle defekt ist, überprüfen Sie dies mit dem folgenden Befehl.

newmandela ist der Bibliotheksname, order ist der Tabellenname, Sie müssen außerdem den Benutzernamen und das Passwort eingeben

Überprüfen Sie alle Tabellen in einer Bibliothek

$ mysqlcheck -c newmandela order -uroot -pEnter password:
newmandela.order                                   
OK
Alle Bibliotheken überprüfen Alle Tabellen in

Alle Bibliotheken und Tabellen wurden überprüft.

$ mysqlcheck -c newmandela -uroot -p
Enter password:
newmandela.account                                 OK
newmandela.alarm                                   OK
newmandela.alarm_settings                          OK
newmandela.auth_group                              OK
newmandela.auth_group_permissions                  OK
newmandela.auth_permission                         OK...
Was ist, wenn Sie nur bestimmte Bibliotheken überprüfen möchten? Sie können den Parameter –databases verwenden

Mysqlcheck verwenden, um die Tabelle zu analysieren

$mysqlcheck -c --all-databases -uroot -p
Enter password:
apmonitor.acinfo                                   OK
apmonitor.apdailysts                               OK
apmonitor.apinfo                                   OK
apmonitor.apmonthsts                               OK
apmonitor.apscanlog                                OK
apmonitor.auth_group                               OK...

Verwenden Sie den obigen Befehl, um die Tabelle

der Radiusbibliothek zu analysieren.
$ mysqlcheck -c --databases newmandela radius -uroot -p
Enter password:
newmandela.account                                 OK
newmandela.alarm                                   OK
newmandela.alarm_settings                          OK
newmandela.auth_group                              OK...
bedeutet analysieren.

Verwenden Sie mysqlcheck, um die Tabelle zu optimieren.
$ mysqlcheck -a radius payment_transactionrecord  -uroot -pEnter password:
radius.payment_transactionrecord                   Table is already up to date

payment_transactionrecord-a bedeutet optimieren Die

-Tabelle der Radiusbibliothek, die für

Verwenden Sie mysqlcheck, um die Tabelle zu reparieren
# mysqlcheck -o radius payment_transactionrecord  -uroot -pEnter password:
radius.payment_transactionrecord                   OK

-opayment_transactionrecord optimiert ist, steht für Reparatur, hier ist die

-Tabelle, um die zu reparieren Radiusbibliothek

Tabellenkombinationsbefehle prüfen, optimieren und reparieren
# mysqlcheck -r radius payment_transactionrecord  -uroot -pEnter password:
radius.payment_transactionrecord                   OK

-rDer obige Befehl hat einen Fehler gemeldet. Entfernen payment_transactionrecord

und
# mysqlcheck -uroot -p --auto-repair -c -o newmandelaError:  mysqlcheck doesn't support multiple contradicting commands.
wird angezeigt in jeder Tabelle. Was bedeutet das? Dies bedeutet nicht, dass die Innodb-Engine keine Optimierung unterstützt

-cmysqlcheck common options

# mysqlcheck -uroot -p --auto-repair -o newmandelaEnter password:
newmandela.account
note     : Table does not support optimize, doing recreate + analyze instead
status   : OK
newmandela.alarm
note     : Table does not support optimize, doing recreate + analyze instead
status   : OK
newmandela.alarm_settings
note     : Table does not support optimize, doing recreate + analyze instead
status   : OK

Table does not support optimize, doing recreate + analyze instead

bedeutet alle Bibliotheken

  • Tabelle analysierenA, –all-databases

  • Tabelle optimieren-a, –analyze

  • Tabellenfehler beheben-o, –optimize

  • Überprüfen Sie die Tabelle auf Fehler-r, –repair

  • Beschädigte Tabellen automatisch reparieren-c, –check

  • Wählen Sie mehrere Bibliotheken aus–auto-repair

  • Verwenden Sie eine Abfrage pro Datenbank mit durch Kommas getrennt aufgelisteten Tabellen-B, –databases

  • Überprüfen Sie die Änderungen seit der letzten Überprüfung von die Tabelle-1, –all-in-1

  • Überprüfen Sie die Tabellen auf versionabhängige Änderungen-C, –check-only-changed

  • Überprüfen Sie Tabellen, die nicht ordnungsgemäß geschlossen sind-g, –check-upgrade

  • DB-Namen korrigieren-F, –fast

  • Tabellennamen korrigieren–fix-db-names

  • Gleich weitermachen wenn ein Fehler auftritt–fix-table-names

  • Erweiterte Prüfung einer Tabelle durchführen. Die Ausführung dauert lange.-f, –force

  • Schneller als die erweiterte Prüfoption, führt aber die meisten Prüfungen aus-e, –extended

  • Schneller als die mittlere Prüfoption-m, –medium-check

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Mysqlcheck zum Überprüfen und Reparieren, ausführliche Erläuterung der Optimierung von Tabellen. 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