mysqladmin ist ein offizielles MySQL-Clientprogramm, das Verwaltung und Betrieb durchführt. Es kann zum Betrieb des MySQL-Datenbankdienstes verwendet werden. In MySQL 5.5 und früheren Versionen besteht die gängigste Methode darin, es zum Herunterfahren der MySQL-Instanz zu verwenden: Mit dem Upgrade der MySQL-Version kann der Befehl „Shutdown“ direkt verwendet werden, um den MySQL-Dienst in MySQL5.7 herunterzufahren. In MySQL 8.0 können Sie den MySQL-Dienst mit dem Befehl restart neu starten. Das Tool mysqladmin wird im täglichen Betrieb und bei Wartungsszenarien immer seltener verwendet. Sehen wir uns heute an, wie man mit dem Tool mysqladmin die aktuellen TPS und QPS einer MySQL-Instanz abruft. Um dieses Problem zu lösen, müssen wir zunächst die Referenzindikatoren von TPS und QPS kennen. In MySQL können wir den Befehl „show global status“ wie folgt verwenden, um die aktuellen Indikatoren von MySQL anzuzeigen: [email protected]:(keine) 13:37:50>>globalen Status anzeigen; +------------------------------------------+----------------+ | Variablenname | Wert | +------------------------------------------+----------------+ | Abgebrochene_Clients | 85032 | | Abgebrochene Verbindungen | 176 | | Binlog_cache_disk_use | 3293 | | Binlog_cache_use | 14631673326 | | Binlog_stmt_cache_disk_use | 13 | | Binlog_stmt_cache_use | 9948429 | | Empfangene Bytes | 19921975442457 | | Bytes_gesendet | 13553543054684 | | Com_admin_Befehle | 913630 | | Com_assign_to_keycache | 0 | | Com_alter_db | 0 | | Com_alter_db_upgrade | 0 | Es gibt mehrere wichtige Indikatoren: 1. Fragen: Die Anzahl der vom MySQL-Server ausgeführten Anweisungen. Dazu zählen nur Anweisungen, die vom Client an den Server gesendet werden, und keine Anweisungen, die in gespeicherten Prozeduren ausgeführt werden. Dieser Parameter zählt nicht die Befehle Com_ping, Com_statistics, Com_stmt_prepare, Com_stmt_close und Com_stat_reset, sondern Show- und DML-Befehle. Enthält keine Anweisungen zur Master-Slave-Replikation. 2. Rückfragen: Die Anzahl der vom Server ausgeführten Anweisungen. Im Gegensatz zum Parameter „Fragen“ umfasst dieser Parameter Anweisungen, die in gespeicherten Prozeduren und integrierten Master-Slave-Replikationsanweisungen ausgeführt werden. Com_ping- und Com_statistics-Befehle werden nicht gezählt. 3. Com_xxx: Gibt an, wie oft die Anweisung xxx ausgeführt wurde. Jeder Typ hat eine Statusvariable, Beispiele sind Com_select, Com_insert, Com_delete, Com_update, Com_commit, Com_rollback usw. Grundsätzlich gibt es mehrere Möglichkeiten, TPS und QPS zu berechnen: Lösung 1: Wenn alle auf dem MySQL-Server ausgeführten SQL-Anweisungen berücksichtigt werden, wird QPS basierend auf Abfragen und TPS basierend auf der algebraischen Summe von Com_commit und Com_rollback berechnet. Lösung 2: Wenn wir nur alle SQL-Anweisungen berücksichtigen, die von der Geschäftsseite über die Befehlszeile ausgeführt werden, können wir QPS basierend auf Fragen und TPS basierend auf der algebraischen Summe von Com_commit und Com_rollback berechnen. Lösung 3: Berechnen Sie QPS und TPS basierend auf dem Com_xxx-Status Mit den folgenden Befehlen können Sie TPS und QPS mit mysqladmin anzeigen: [root ~]#./mysqladmin -r -i 2 -uroot -pxxxxxx -P4306 --socket=/data/mysql_4306/tmp/mysql.sock ext| awk '/Queries/{printf("QPS:%d\n",$4)}' mysqladmin: [Warnung] Die Verwendung eines Passworts in der Befehlszeilenschnittstelle kann unsicher sein. QPS:55668415 Anzahl der Anfragen pro Sekunde: 1 Anzahl der Anfragen: 34 Anzahl der Anfragen: 32 QPS:108 Anzahl der Anfragen pro Sekunde: 6 Anzahl der Anfragen pro Sekunde: 7 [root ~]# ./mysqladmin -r -i 2 -uroot -pxxxxxx -P4306 --socket=/data/mysql_4306/tmp/mysql.sock ext| awk '/Com_commit/{printf("TPS:%d\n",$4)}' mysqladmin: [Warnung] Die Verwendung eines Passworts in der Befehlszeilenschnittstelle kann unsicher sein. TPS:27449691 TPS:56 TPS: 1 TPS: 2 TPS:28 Hier erklären wir die Parameter -r und -i. Wir verwenden den Befehl mysqladmin --help, um diese beiden Parameter zu filtern:
Zeigt den Unterschied zwischen aktuellen und vorherigen Werten an, wenn es mit -i verwendet wird. Funktioniert derzeit nur mit erweitertem Status. Zum Umrechnen ist dies die Differenz zwischen dem aktuellen und dem vorherigen Wert. Es muss mit -i verwendet werden. Sehen wir uns den Parameter -i an:
Das heißt, das Zeitintervall Darüber hinaus gibt es dahinter eine ext-Option. Siehe die Erklärung dieser Option: erweiterter Status: Gibt eine erweiterte Statusmeldung vom Server aus. #Übersetzung: Gibt weitere Statusinformationen des MySQL-Servers aus. Dadurch ist der obige Befehl ziemlich selbsterklärend. Verwenden Sie den Parameter -r, um die Differenz zwischen verschiedenen Statusvariablen zu berechnen, und steuern Sie dann mit dem Parameter -i die Zeitdauer. Wenn Sie den Parameter auf 1 setzen, bedeutet dies die Differenz pro Sekunde, und ext bedeutet, dass mehr MySQL-Statusinformationen ausgegeben werden. TPS und QPS lassen sich leicht berechnen. Unterschiedliche Berechnungsmethoden unterscheiden sich geringfügig. Genauere TPS- und QPS-Werte können je nach Szenario berechnet werden. Bei der Berechnung von TPS und QPS gibt es mehrere Kriterien, die je nach Bedarf ersetzt werden können: 1. com_commit zeichnet keine implizit festgeschriebenen Transaktionen auf. Wenn also das implizite Festschreiben aktiviert ist, ist die TPS-Berechnung mit com_commit ungenau. 2. Wenn die Datenbank viele MyISAM-Tabellen enthält, ist es besser, Fragen zur Berechnung zu verwenden. 3. Wenn die Datenbank viele InnoDB-Tabellen enthält, ist es besser, für die Berechnung die Datenquelle com_* zu verwenden. 4. Fragen zeichnen alle Select- und DML-Abfragen seit dem Start von mysqld auf, einschließlich der Anzahl der Show-Befehlsabfragen. Dies ist nicht ganz korrekt. Viele Datenbanken verfügen beispielsweise über Überwachungssysteme, die alle 5 Sekunden eine Show-Abfrage an die Datenbank durchführen, um den aktuellen Datenbankstatus abzurufen. Diese Abfragen werden in den QPS- und TPS-Statistiken aufgezeichnet und verursachen eine gewisse „Datenverschmutzung“. 5. Wenn einige implizite Commits aktiviert sind, kann TPS mit Com_insert + Com_update + Com_delete angezeigt werden. Und schließlich gibt es hier noch eine Methode, um festzustellen, ob MySQL aktiv ist: [root ~]# ./mysqladmin -r -i 2 -uroot -pdba@JJMatch -P4306 --socket=/data/mysql_4306/tmp/mysql.sock ping mysqladmin: [Warnung] Die Verwendung eines Passworts in der Befehlszeilenschnittstelle kann unsicher sein. mysqld ist am Leben mysqld ist am Leben mysqld ist am Leben Verwenden Sie den Ping-Befehl mysqladmin, um den Überlebensstatus von MySQL zu überprüfen. Mit dem Upgrade von MySQL wird die Häufigkeit der Verwendung des mysqladmin-Tools immer geringer und fast alle täglichen Anforderungen werden über das mysql-Tool erfüllt. Das mysqladmin-Tool der Version mysql8.0 wurde basierend auf mysql5.7 leicht angepasst. Wenn Sie interessiert sind, können Sie es selbst studieren. Oben finden Sie Einzelheiten zur Verwendung von mysqladmin zum Abrufen der aktuellen TPS und QPS einer MySQL-Instanz. Weitere Informationen zu mysqladmin-Statistiken von MySQL T/QPS finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
>>: Beispiel für ein JavaScript-Meldungsfeld
Inhaltsverzeichnis 1. Nachfrage 1. Nachfrage 2. S...
1. Einleitung Ich habe vor Kurzem die Prinzipien ...
CSS-Vars-Ponyfill Bei der Verwendung von CSS-Vari...
Inhaltsverzeichnis Vorwort iframe implementiert S...
Inhaltsverzeichnis Boolescher Typ Nummerntypen Ze...
Nach dem vorherigen Artikel 202 kostenlose hochwe...
In diesem Artikel wird das ausführliche Installat...
Verwendung des ALTER-Befehls in MySQL zum Bearbei...
Die Hover-Prompts von Vue2+elementui sind in exte...
Das einfache, nahtlos scrollende Karussell weist ...
Ich habe vorher ein Testprogramm geschrieben, in d...
Navigationsleiste erstellen: Technische Vorausset...
Dieser Artikel stellt ein interessantes Pseudoele...
Was ist eine Transaktion? Eine Transaktion ist ei...
——Anmerkungen aus „MySQL in einfachen Worten (zwe...