Globaler Status

Das Kommando »mysqladmin« ist in MySQL die Zentrale für die Verwaltung des MySQL-Daemons (»mysqld«). Es ermöglicht unter anderem das Anlegen und Löschen von Datenbanken, es beendet einzelne MySQL-Threads und stoppt und startet den Server. Daneben liefert es aber auch die Werte zahlreicher Performance-Counter. Dazu dient der Aufruf »mysqladmin ‑u root ‑p password status«. Er gibt einen kurzen Überblick über den aktuellen Systemstatus:

shell> mysqladmin ‑u root ‑p password status
Uptime: 8116345  Threads: 143  Questions: 431413136  Slow queries: 116  Opens:
2080649  Flush tables: 1  Open tables: 64  Queries per second avg: 53.154

Zwar ist die Ausgabe nicht sonderlich detailliert, jedoch bietet sie den kürzesten Überblick. Auch ein Blick in die Prozessliste ist so möglich.

mysqladmin ‑u root ‑p password processlist status

oder alternativ auf der SQL-Kommandozeile mit »SHOW FULL PROCESSLIST«. Das Ergebnis entspricht Listing 1.

Listing 1: »processlist status«

shell> mysqladmin ‑u root ‑p processlist status
‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑----------------
| Id | User  | Host      | db | Command | Time | State | Info             |
‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑
| 57 | root | localhost  |    | Query   | 0    |       | show processlist |
‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑----------------
Uptime: 8116345  Threads: 1  Questions: 39487
Slow queries: 0  Opens: 541  Flush tables: 1
Open tables: 19  Queries per second avg: 0.0268

Eine ganze Flut von Werten liefert:

mysqladmin ‑u root ‑p password extended‑status

oder alternativ wieder in einem SQL-Client: »SHOW GLOBAL STATUS«. Alle ausgegebenen Werte beziehen sich auf den Zeitraum seit dem letzten Start des Servers. Um einen Überblick zu gewinnen, ist es ratsam, die Ausgabe sektionsweise zu durchforsten.

Com-Sektion

Die Com-Sektion füllt einen großen Teil des Statusberichts. Sie gibt vor allem Auskunft über die vom MySQL-Server verarbeiteten Operationen. Es erleichtert die Interpretation, wenn man einzelne Werte zueinander ins Verhältnis setzt:

Read/Write-Ratio:

(Com_select + Qcache_hits)/(Com_insert + Com_update+Com_delete+Com_replace)

Created_tmp_tables und Created_tmp_disk_tables: Diese Werte geben Auskunft über die vom Server erstellten temporären Tabellen. Da das Anlegen von temporären Tabellen auf dem Server eher teuer ist, empfiehlt es sich, bei einer erhöhten Anzahl besser den Parameter »tmp_table_size« zu erhöhen.

Temp-Table-Ratio

created_disk_tmp_tables * 100 / created_tmp_tables
comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023