EinführungMySQL ist die beliebteste Open-Source-Datenbank und wird in vielen Bereichen eingesetzt. Als MySQL-DBA führen Sie häufig einige Leistungstests an der Datenbank durch, um den Geschäftsdruck aktiv (oder passiv) zu bewerten und die aktuelle Datenbanklast und die höchste Leistungskapazität zu ermitteln. Zu den gängigen Leistungstesttools gehören Sysbench und TPCC. Beide sind hervorragende Stresstesttools, erfordern jedoch eine spezielle Kompilierung oder Installation sowie bestimmte Entwicklungsfähigkeiten, um bestimmte Testanweisungen zu ändern. mysqlslap wird automatisch bei der Installation von MySQL installiert und mysqlslap kapselt viele benutzerdefinierte Testfunktionen extern. Benutzer müssen nur extern SQL-Anweisungsskripte bereitstellen, um Testanweisungen anzupassen, was die Verwendung erleichtert. Anweisungenmysqlslap bietet viele Parameter zum Konfigurieren der Art der Testelemente. Hier wählen wir zur Erläuterung nur einige allgemeine Parameter aus. Detaillierte Informationen finden Sie in den Hilfeinformationen von mysqlslap selbst.
Tatsächliche ErfahrungHier ist ein einfacher Test von mysqlslap. Die Zielinstanz verwendet Tencent Cloud Database MySQL. Das einfachste Testbeispiel ist wie folgt: root@VM-64-10-debian:~# mysqlslap --concurrency=100 --iterations 10 -a --auto-generate-sql-add-autoincrement --engine=innodb --number-of-queries=1000 -h172.1.100.10 -uroot -p Passwort eingeben: Vergleichsindex Wird für die Engine InnoDB ausgeführt Durchschnittliche Anzahl von Sekunden zum Ausführen aller Abfragen: 0,046 Sekunden Mindestanzahl von Sekunden zum Ausführen aller Abfragen: 0,042 Sekunden Maximale Anzahl von Sekunden zum Ausführen aller Abfragen: 0,049 Sekunden Anzahl der Clients, die Abfragen ausführen: 100 Durchschnittliche Anzahl der Anfragen pro Kunde: 10 root@VM-64-10-debian:~# In diesem Beispiel wird das einfachste Testmodell verwendet, bei dem mysqlslap alle Testanweisungen und Anweisungen zur Tabellenerstellung selbst generiert. Wenn Sie die Leistung unter verschiedenen Parallelitätsbedingungen vergleichen möchten, können Sie sie folgendermaßen testen: root@VM-64-10-debian:~# mysqlslap --concurrency=100,200 --iterations 10 -a --auto-generate-sql-add-autoincrement --engine=innodb --number-of-queries=1000 -h172.16.0.40 -uroot -p Passwort eingeben: Vergleichsindex Wird für die Engine InnoDB ausgeführt Durchschnittliche Anzahl von Sekunden zum Ausführen aller Abfragen: 0,046 Sekunden Mindestanzahl von Sekunden zum Ausführen aller Abfragen: 0,045 Sekunden Maximale Anzahl von Sekunden zum Ausführen aller Abfragen: 0,048 Sekunden Anzahl der Clients, die Abfragen ausführen: 100 Durchschnittliche Anzahl der Anfragen pro Kunde: 10 Vergleichsindex Wird für die Engine InnoDB ausgeführt Durchschnittliche Anzahl von Sekunden zum Ausführen aller Abfragen: 0,037 Sekunden Mindestanzahl von Sekunden zum Ausführen aller Abfragen: 0,034 Sekunden Maximale Anzahl von Sekunden zum Ausführen aller Abfragen: 0,052 Sekunden Anzahl der Clients, die Abfragen ausführen: 200 Durchschnittliche Anzahl der Anfragen pro Kunde: 5 root@VM-64-10-debian:~# Das Ausgabeergebnis ist die Zeit. Je kürzer also die Zeit, desto besser die Gesamtleistung. Wenn Sie die Testanweisung anpassen möchten, können Sie die SQL-Anweisung beispielsweise in die Datei schreiben: root@VM-64-10-debian:~# cat erstellen.sql Tabelle erstellen a (b int); In a Werte einfügen (23); root@VM-64-10-debian:~# cat query.sql WÄHLEN SIE * AUS a; WÄHLE b AUS a; root@VM-64-10-debian:~# root@VM-64-10-debian:~# mysqlslap --concurrency=100,200 --query=query.sql --create=create.sql --delimiter=";" --engine=innodb --number-of-queries=1000 -h172.16.0.40 -uroot -p Passwort eingeben: Vergleichsindex Wird für die Engine InnoDB ausgeführt Durchschnittliche Anzahl von Sekunden zum Ausführen aller Abfragen: 0,045 Sekunden Mindestanzahl von Sekunden zum Ausführen aller Abfragen: 0,045 Sekunden Maximale Anzahl von Sekunden zum Ausführen aller Abfragen: 0,045 Sekunden Anzahl der Clients, die Abfragen ausführen: 100 Durchschnittliche Anzahl der Anfragen pro Kunde: 10 Vergleichsindex Wird für die Engine InnoDB ausgeführt Durchschnittliche Anzahl von Sekunden zum Ausführen aller Abfragen: 0,023 Sekunden Mindestanzahl von Sekunden zum Ausführen aller Abfragen: 0,023 Sekunden Maximale Anzahl von Sekunden zum Ausführen aller Abfragen: 0,023 Sekunden Anzahl der Clients, die Abfragen ausführen: 200 Durchschnittliche Anzahl der Anfragen pro Kunde: 5 root@VM-64-10-debian:~# ZusammenfassungAuf dem Markt sind viele MySQL-Stresstest-Tools erhältlich und jedes Tool hat seine eigenen Vor- und Nachteile. Indem Sie mehr über die Tools erfahren und dann das am besten geeignete Tool entsprechend Ihren tatsächlichen Anforderungen auswählen, können Sie die erforderlichen Stresstests auf die effizienteste Weise durchführen. Das Obige ist eine ausführliche Einführung in die Verwendung des offiziellen Leistungstesttools von MySQL, mysqlslap. Weitere Informationen zur Verwendung von mysqlslap finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: 3 Möglichkeiten zum Erstellen von JavaScript-Objekten
>>: CSS verwendet radialen Farbverlauf zur Implementierung von Coupon-Stilen
1. So erstellen Sie einen Benutzer und ein Passwo...
Einfache Beschreibung Da es zuvor mit Centos7 ers...
Verwenden Sie einen JS-Timer, um ein Element zu e...
Verwenden von NULL in Vergleichsoperatoren mysql&...
Inhaltsverzeichnis 1. Front-End-Führungsprozess: ...
Inhaltsverzeichnis Mehrere MySQL-Instanzen Übersi...
Gemeinsame Eigenschaften von Tabellen Die grundle...
Vorwort Heute habe ich das Erzeugungsmuster im En...
Wenn Sie die neueste Ubuntu Server-Version verwen...
Dies ist ein offizieller Screenshot. Nach der Ins...
Überwachungshost hinzufügen Host 192.168.179.104 ...
1. Öffnen Sie Port 2375 Bearbeiten Sie docker.ser...
1. Laden Sie das Installationspaket herunter Das ...
Inhaltsverzeichnis Voraussetzungen Einrichten ein...
Der Zweck des Schreibens von Skripten besteht dar...