1. 程式人生 > >Linux 指定MySQL服務執行的CPU核心(數)

Linux 指定MySQL服務執行的CPU核心(數)

最近在利用mysqlslap對MySQL進行效能測試,但是測得的TPS、QPS的benchmark資料,從趨勢上就跟網上“權威”的測試資料不同。這讓OneCoder十分懷疑測試資料的準確性。

在定位問題的過程中,在獨立於MySQL Server的機器上執行mysqlslap測試,測得的資料趨勢正常。即初始隨著併發數增大(一定範圍內),TPS和QPS成上升趨勢。這讓我懷疑我之前在同一臺伺服器進行的測試,可能mysqlslap和MySQL Server爭奪了CPU資源。

在一篇MySQL的測試報告中看到這樣的話:

此外測試的機器具有 16 核,其中 12 核執行 mysqld ,另外 4 核執行 sysbench。

立馬上網搜尋指定方法。搜得Linux下的taskset命令

taskset -cp cpu序號 mysqld-pid  

即可指定mysqld服務使用的cpu核心。例如:

taskset -cp 0-47 12345

執行mysqlslap的時候,只需通過

taskset -c 48-63 mysqlslap xxxxxx

指定使用的cpu核心即可。準備給MySQL Server分配48核, mysqlslap 16核,測試看看效果。