2019年4月10日星期三

有時慢速數據庫..不是數據庫......

所以我最近被要求調查為什麼更新的MySQL 5 .6比舊的5.5慢

所以我開始尋找標準變量和緩存等等。

測試用例是一個簡單的例程,在5.6上運行的時間比在5.5上運行時長兩倍。

添加到混合.. 5.6版本有兩倍Innodb_buffer_pool_size,當然更多ram整體。

所以我用MySQLslap開始了一些測試......

Mysqlslap測試顯示它在5.6上較慢

5.6:
mysqlslap --defaults-file =。/。my.cnf --concurrency = 150 --iterations = 130 -query = / test.sql --create-schema = applicationdata --verbose
基準
運行所有查詢的平均秒數:0.028秒
運行所有查詢的最小秒數:0.019秒
運行所有查詢的最大秒數:0.071秒
運行查詢的客戶端數量:150
每個客戶端的平均查詢數:1

5.5:
mysqlslap --defaults-file =。/。my.cnf --concurrency = 150 --iterations = 130 --query = / test.sql --create-schema = applicationdata --verbose
基準
運行所有查詢的平均秒數:0.015秒
運行所有查詢的最小秒數:0.011秒
運行所有查詢的最大秒數:0.024秒
運行查詢的客戶端數量:150
每個客戶端的平均查詢數:1


所有這些都違背了公共基準
http://dimitrik.free.fr/blog/archives/2013/02/mysql-performance-mysql-56-ga-vs-mysql-55-32cores.html

所以我檢查了磁盤級別 -

5.6:
#dd if = / dev / zero of = test bs = 1048576 count = 2048
2048 + 0條記錄
2048 + 0記錄了
複製2147483648字節(2.1 GB),25.7401 s,83.4 MB / s

#dd if = test of = / dev / null bs = 1048576
2048 + 0條記錄
2048 + 0記錄了
複製2147483648字節(2.1 GB),29.1527 s,73.7 MB / s

5.5:
#dd if = / dev / zero of = test bs = 1048576 count = 2048
2048 + 0條記錄
2048 + 0記錄了
複製2147483648字節(2.1 GB),19.9214秒,108 MB / s

#dd if = test of = / dev / null bs = 1048576
2048 + 0條記錄
2048 + 0記錄了
複製2147483648字節(2.1 GB),20.0243秒,107 MB / s



無論MySQL如何,5.5的磁盤都比較慢。 所以在這種情況下....看看修復磁盤速度.. MySQL運行正常,並將。