MySQL和多核处理器


8

我正在多核xeon处理器的win2008服务器上运行MySQL。看起来它仅使用一个内核。

我需要配置一些东西以使其使用所有内核吗?

服务器正在支持一个加载了很多呼叫的网站。我确定同时存在多个调用,但是DB希望在单个内核中处理任何事情。

我该怎么做才能改善它?


您是否在任务管理器中检查了流程的亲和力设置?
gekkz 2011年

您正在使用什么版本的MySQL?
RolandoMySQLDBA 2011年

MySQL 5.0和5.1是多线程的,但我也注意到某些功能(如复制)将在多处理器/多核计算机上使用一个CPU的100%,而其他内核则处于空闲状态。
Stefan Lasiewski 2011年

Answers:


7

如果希望能够调整MySQL以利用多个内核,则需要升级到MySQL 5.5。

根据MySQL自2010年12月发布的白皮书“ MySQL 5.5性能和可伸缩性的新增功能”:

后台I / O线程的控制–用户现在为所有平台提供了两个新的配置参数,即innodb_read_io_threads和innodb_write_io_threads,可用于设置用于读取和写入请求的后台线程数。这有助于用户在高端多核系统上调整和扩展其MySQL应用程序􀁸控制主线程I / O速率–用户现在可以配置整体I / O容量

提到的参数是innodb_read_io_threadsinnodb_write_io_threads

这些设置在MySQL 5.1.38之前不存在。实际上,只有MySQL插件才允许在MySQL 5.1中进行这些设置。它包含在MySQL 5.5的本地InnoDB中。

也许这篇博客文章可以使您对多核服务器的InnoDB可扩展性有更多的了解


现在是5.5,我将检查这些参数并批准。
丹妮(Dani)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.