MySQL使用了我服务器的一半核心

MySQL使用了我服务器的一半核心,mysql,cpu,gentoo,Mysql,Cpu,Gentoo,我正在64位Gentoo Box上运行MySQL 5.1.62 这个MySQL负载很重,但问题是它只使用了服务器的一半核心: Cpu0:84.0%us、13.0%sy、0.0%ni、0.0%id、0.0%wa、0.0%hi、3.0%si、0.0%st Cpu1:62.4%us、34.7%sy、0.0%ni、3.0%id、0.0%wa、0.0%hi、0.0%si、0.0%st Cpu2:68.3%us,26.7%sy,0.0%ni,5.0%id,0.0%wa,0.0%hi,0.0%si,0.0%s

我正在64位Gentoo Box上运行MySQL 5.1.62

这个MySQL负载很重,但问题是它只使用了服务器的一半核心:

Cpu0:84.0%us、13.0%sy、0.0%ni、0.0%id、0.0%wa、0.0%hi、3.0%si、0.0%st

Cpu1:62.4%us、34.7%sy、0.0%ni、3.0%id、0.0%wa、0.0%hi、0.0%si、0.0%st

Cpu2:68.3%us,26.7%sy,0.0%ni,5.0%id,0.0%wa,0.0%hi,0.0%si,0.0%st

Cpu3:72.3%us、3.0%sy、0.0%ni、22.8%id、2.0%wa、0.0%hi、0.0%si、0.0%st

Cpu4:0.0%us、0.0%sy、0.0%ni、100.0%id、0.0%wa、0.0%hi、0.0%si、0.0%st

Cpu5:0.0%us、0.0%sy、0.0%ni、100.0%id、0.0%wa、0.0%hi、0.0%si、0.0%st

Cpu6:0.0%us、0.0%sy、0.0%ni、0.0%id、0.0%wa、0.0%hi、0.0%si、0.0%st

Cpu7:0.0%us、0.0%sy、0.0%ni、0.0%id、0.0%wa、0.0%hi、0.0%si、0.0%st

这是一个双四核服务器,具有:Intel(R)Xeon(R)CPU E5606@2.13GHz

知道如何使用所有内核吗

谢谢你的帮助


加丹有什么想法?是的,但你不会喜欢的

许多内核不能自动使系统更快:它运行的工作负载需要易于并行化

我怀疑在您的情况下会发生的是,您正在运行少量并发查询,每个查询都是CPU密集型的。碰巧的是,每个都只使用一个内核


要进行检查,如果这是罪魁祸首,请手动启动8个并发的CPU密集型查询-您的CPU应该得到充分利用。

较新版本的MySQL或增强型MySQL服务器可能会更好地利用您的内核。不过,数据库服务器被IO绑定是相当常见的

你确定mysql实际上可以使用4个以上的线程吗?查看此页面,有一些有趣的信息:据我在该页面上看到的,是的,它可以,但您是否观察到有一天使用超过4个线程的mysql内核(即不计算连接线程等)?你看到多少?(对于我个人的文化)事实上,是的。如果我运行其他的东西(比如emerge),它会使用剩余的核心。事实上,我注意到,当将一些表从MyISAM更改为InnoDB时,它使用的核心比平常多得多。我将尝试查看:#innodb_file_io_threads=4#innodb_thread_concurrency=8,以使其平稳运行。谢谢