我们的应用程序使用MySql版本4.0.24很长一段时间。我们正在尝试将其迁移到5.6.27版。 但是,在测试5.6.27的性能时,即使简单的选择和更新在我们进行负载测试时也要慢30-40%。 CPU和IO速度比旧服务器好得多。两个版本中表的存储引擎都是MyIsam。数据库只有一个连接。我们尝试了以下选项:
我们尝试修改其他参数,例如query cache,tmp_table_size,heap_table_size。但是,他们都没有任何区别。
如果我们可以尝试其他任何选项,请告诉我吗?
这是my.cnf的副本:
lower-case-table-names=1
myisam-recover=FORCE
key_buffer_size=2000M
答案 0 :(得分:0)
您可以看到的一些事情是两台服务器是否具有相同数量的RAM,因为旧服务器可能具有更多RAM,因此可以在内存中缓存更多内容。
您还可以查看如何连接到MySQL服务器 - 是通过网络吗?网络速度/质量是否不同?是一台服务器是在本地访问而另一台是通过网络访问的。
您尝试调整了一些好的参数,但是如果有一些您丢失的参数,您可以在两台服务器上运行DataLoader( __dirname, function (data) {
console.log(data);
});
,然后使用Winmerge之类的工具比较两者的值并查看你可能没有想到的可能有什么不同。
答案 1 :(得分:0)
尝试多个选项后,以下是适用于我们的配置。可能还有其他解决方案,但这对我们有用。
选项1:
选项2:
迁移到MariaDB。从性能的角度来看,这非常好。与我们系统的mysql相比,它的性能提高了5%。但是,由于非技术原因,我们无法追求这一选择。
感谢您的投入。