MySQLに良いCPUスペックは?
MySQL専用にサーバーを稼動させていますが、スペックの良いサーバーに変えようと思います。
ただ、「MySQLは1プロセスで動作するので、CPUのコア数が多くしても効果が出ない」と聞いた気がしますが、本当でしょうか?
確かに、現在MySQL専用に使っているサーバーでは、CPU使用率が一つのCPUのみに偏って高くなっています(CPUを使い切れば均等になるのかもしれませんが、実際の使用感は重いです)。
通常の用途で考えるとコストパフォーマンスは悪くなりますが、1コア1CPUでなるべく高いスペックのCPUのサーバーを探すべきでしょうか? いまどきマルチコアでないサーバーもなかなかないのでは…?
ちなみに現在の利用環境は、
CentOS 5
MySQL 5.0
です。
No.3ベストアンサー
- 回答日時:
MySQLはマルチスレッドプログラムですので、同時並列で処理できる処理に関しては、使えるCPUの数が多ければ多いほど性能は上がります。
ただし、1つのクエリを処理するのは1スレッドなので、1つのクエリの処理性能は1つのCPUコアの性能に依存します。
なので、Webアプリのような同時並列で多数のクエリを処理することを求められるサーバーならCPUコアの多いサーバーのほうが有利になりますし、バッチ処理のような計算量の多いクエリがいくつか実行するだけならCPUコア1つあたりの処理能力の高いサーバーが有利になります。
実際には、CPUの処理性能よりDisk I/Oの性能がボトルネックになることが多いので、まずは何がボトルネックになっているのかちゃんと現状を把握してからサーバーを変えたほうが良いでしょう。
No.2
- 回答日時:
Centには詳しくないですが、よくFreeBSDのマルチコアのスコアを
だすときにMySQLを利用したりしますね。
私の記憶がただしければオクトコアまでは、普通に比例して
スピードがあがっていたような・・・
なるほど。。つまり「MySQLでマルチコアのCPU処理速度の評価をしているので、MySQLはマルチコアで能力が高まるはず」、ということですね。
ありがとうございました。
No.1
- 回答日時:
> MySQLは1プロセスで動作するので、CPUのコア数が多くしても効果が出ない
間違っています。
MySQLマルチスレッド(http://dev.mysql.com/doc/refman/5.1/ja/what-is-m …)対応です。マルチコアの方が性能を引き出せます。
> CPU使用率が一つのCPUのみに偏って高くなっています
それは、MySQLを利用しているアプリケーションがシングルスレッドなのではありませんか?
この回答への補足
早速のご回答ありがとうございます。
>間違っています。MySQLマルチスレッド対応です。
マルチスレッドなのは存じてますが、シングルプロセスなのが気になっていました。マルチスレッドであれば、シングルプロセスなのは関係なくマルチCPUの効果を出せるということでしょうか?
(別件ですが、今自分で気づきましたが、私はマルチコアとマルチCPUを区別してませんでした。ただ、この質問では、ここを厳密に区別する必要はないかな、と勝手に思ってます。)
>MySQLを利用しているアプリケーションがシングルスレッドなのではありませんか?
当方の環境では MySQLしか動作していないサーバー筐体を前提としていますので、ご懸念は当てはまりません。Webサーバー(MySQLを利用するアプリケーション)は別の筐体で動作しています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・ことしの初夢、何だった?
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
(SQLSERVER) 別サーバーへテー...
-
異なるサーバーにファイルをエ...
-
SQLServerでViewの参照・・・
-
1台のサーバーに対して複数のDB...
-
別サーバーのDB同士を結合する...
-
2つのPCの SQL Server のテー...
-
SQLのエラー(~付近に不適切な...
-
Excel-VBAの「しばらくお待ちく...
-
Oracle 8i コンマ(,)を含むデ...
-
ACCESS ADOでupdateが効かない
-
オブジェクト名 '<table>' が無...
-
既定のインスタンスと名前付き...
-
SQLサーバー接続 特定のPCがWin...
-
SQLServerへのOpen命令でのエラー
-
新規saの作成方法について
-
ノートパソコンのHDDを同機種へ...
-
ACCESSで作成したアプリケーシ...
-
ACCESSからのODBC接続のみ応答...
-
VBのソース上からAccessのmdbフ...
-
MSDEまたはSQLServerでReadOnly...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
異なるサーバーにファイルをエ...
-
(SQLSERVER) 別サーバーへテー...
-
SQLServerでViewの参照・・・
-
別サーバーのDB同士を結合する...
-
dtexecコマンドを使ってDTSパッ...
-
FreeBSD+PostgreSQLでありえな...
-
2つのPCの SQL Server のテー...
-
リンクサーバ(PostgreSQL)に...
-
MySQLに良いCPUスペックは?
-
SQLサーバーのテーブルでサーバ...
-
SQLサーバーでの正規表現メタ文...
-
ITパスポートについての質問で...
-
SQLのエラー(~付近に不適切な...
-
Oracle 8i コンマ(,)を含むデ...
-
SQLサーバー接続 特定のPCがWin...
-
Excel-VBAの「しばらくお待ちく...
-
既定のインスタンスと名前付き...
-
SQL Loaderを使いたい
-
Access2010 accdbのエラー「ODB...
-
SQLCMDにて教えていただきたい...
おすすめ情報