my.cnf(5.5と5.1は同じ):
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
Mysql 5.5が5.1より遅いのはなぜですか?
ところで:私は試されましたmysql5.5/bin/mysqlslap
およびmysql5.1/bin/mysqlslap
、結果は同じです
これは驚くべきことかもしれませんが、MySQL 5.1は特定の状況下でMySQL 5.5よりも優れている場合があります。
Perconaは、MySQLの複数のリリース間でベイクオフを実行しました
すべてのテストは、MySQLが構成されていない状態で実行されました(つまり、my.cnfは作成されませんでした)。結果?
新しいバージョンのMySQLのパフォーマンスを向上させる場合は、それを調整する必要があります。実際、 私はDBA StackExchangeでMySQL Bakeoffを実行するアイデアを説明しました 。
どういう意味ですか?
MySQL 5.5では、より専用の読み取りスレッド、書き込みスレッド、および全体的なI/O容量を利用するための新しいInnoDBオプションがあります。これにより、マルチコアサーバーでより多くのCPUを使用できます。未構成のままにすると、MySQL 5.5は、ほとんどの場合、古いバージョンのMySQLと同じレベルの戦場で動作します。場合によっては、パフォーマンスが低下する可能性があります。