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
Nachdem ich die Installation von Python8 minimier...
Wir wissen, dass wir beim Verwenden von HTML im N...
Vorwort Da viele Freunde sagen, dass sie keinen M...
Inhaltsverzeichnis Der Unterschied zwischen Hash ...
Inhaltsverzeichnis Überblick 1. Menü- und Routing...
Bei der Verwendung von MySQL zum Ausführen bestim...
Inhaltsverzeichnis 1. So finden Sie doppelte Zeil...
MySQL-Installationstutorial für Windows-Systeme h...
Die google.html-Schnittstelle ist wie in der Abbil...
In den meisten Fällen unterstützt MySQL Chinesisc...
1. Einleitung Im Projekt wird MySQL verwendet. Ic...
Code kopieren Der Code lautet wie folgt: .sugLaye...
So zeigen Sie Dateien in einem Docker-Image an 1....
Inhaltsverzeichnis Einführung Unterscheiden Sie z...
Inhaltsverzeichnis 1. analysieren 1.1 Regeln für ...