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
Inhaltsverzeichnis Vorbereitende Vorbereitung Imp...
Lassen Sie mich zunächst die MySQL-Version erklär...
Nach der MySQL-Datenbankoptimierung kann nicht nu...
Sttty ist ein gängiger Befehl zum Ändern und Druc...
Inhaltsverzeichnis 1. Laden Sie nodejs herunter 2...
Ich bin vor Kurzem auf ein Problem gestoßen, als ...
Inhaltsverzeichnis 2. Komma-Operator 3. JavaScrip...
Installieren Sie Oracle_11g mit Docker 1. Ziehen ...
In den meisten Fällen unterstützt MySQL Chinesisc...
Der HTML-Code zum Abfangen von mehrzeiligem Text l...
Hinweis: Bei der Webentwicklung werden IE und FF n...
Vorwort Backup ist die Grundlage der Notfallwiede...
Routenplanung vue-router4 behält den Großteil der...
Inhaltsverzeichnis Vorwort 1. Bildoptimierung 2. ...
Inhaltsverzeichnis Eckig erreichen Aufrufreihenfo...