my.cnf (5.5 und 5.1 sind gleich):
back_log=200
max_connections=512
max_connect_errors=999999
key_buffer=512M
max_allowed_packet=8M
table_cache=512
sort_buffer=8M
read_buffer_size=8M
thread_cache=8
thread_concurrency=4
myisam_sort_buffer_size=128M
interactive_timeout=28800
wait_timeout=7200
MySQL 5.5:
..mysql5.5/bin/mysqlslap -a --concurrency=10 --number-of-queries 5000
--iterations=5 -S /tmp/mysql_5.5.sock --engine=innodb
Benchmark
Running for engine innodb
Average number of seconds to run all queries: 15.156 seconds
Minimum number of seconds to run all queries: 15.031 seconds
Maximum number of seconds to run all queries: 15.296 seconds
Number of clients running queries: 10
Average number of queries per client: 500
mysql5.1:
..mysql5.5/bin/mysqlslap -a --concurrency=10 --number-of-queries 5000
--iterations=5 -S /tmp/mysql_5.1.sock --engine=innodb
Benchmark
Running for engine innodb
Average number of seconds to run all queries: 13.252 seconds
Minimum number of seconds to run all queries: 13.019 seconds
Maximum number of seconds to run all queries: 13.480 seconds
Number of clients running queries: 10
Average number of queries per client: 500
Warum MySQL 5.5 langsamer als 5.1?
Übrigens: Ich habe es versucht mysql5.5/bin/mysqlslap
und das mysql5.1/bin/mysqlslap
Ergebnis ist das gleiche
--concurrency=10 --number-of-queries 5000
Antworten:
Sie werden dies vielleicht überraschen, aber MySQL 5.1 kann MySQL 5.5 unter bestimmten Umständen übertreffen.
Percona führte ein Bake-Off zwischen mehreren Versionen von MySQL durch
Alle Tests wurden mit nicht konfiguriertem MySQL durchgeführt (mit anderen Worten, es wurde keine my.cnf erstellt). Die Ergebnisse?
Wenn Sie möchten, dass neuere Versionen von MySQL eine bessere Leistung erzielen, müssen Sie sich darauf einstellen. Tatsächlich habe ich im DBA StackExchange die Idee beschrieben, ein MySQL-Bakeoff durchzuführen .
Was meine ich damit?
In MySQL 5.5 gibt es neue InnoDB-Optionen für die Verwendung dedizierterer Lesethreads, Schreibthreads und der gesamten E / A-Kapazität. Dies kann mehr CPUs in Multicore-Servern beanspruchen. Wenn MySQL 5.5 nicht konfiguriert ist, funktioniert es in den meisten Fällen unter denselben Wettbewerbsbedingungen wie ältere Versionen von MySQL. Manchmal könnte es schlechter abschneiden.
quelle