| ||||||||||||||
| 1 2 3 次のページ | ||||||||||||||
| max_connectionsとは | ||||||||||||||
max_connectionsとは、「MySQLサーバが許可する、MySQLクライアントの同時接続最大数」です。この値は、MySQLクライアントから無制限にコネクションが張られることによってMySQLサーバの負荷が増大し、最終的にはサービスが停止してしまう…といった事態を防ぐために、同時接続してよいMySQLクライアントの数を制限することが目的です。 さらにもう少しパフォーマンスに注目していい換えれば、MySQLサーバがもっとも良い効率で稼動できる範囲にMySQLクライアントの接続数を制限する、ということになります。 あなたの環境ではいくつに設定されているでしょうか。パラメータ設定一覧を取得するコマンドは「第1回:定量的な情報収集のススメ」で説明した通りですので、以下のように実行してみましょう。 特に意識して設定を変更していなければ、上記のようにデフォルト値である100が表示されるはずです。 なお、実際に接続可能な数は「max_connections+1」で、SUPER権限を持つユーザ(rootなど)用に+1の接続が予約されています。そうすることにより、max_connectionsに達してしまった場合でも、管理者は優先的にMySQLサーバへ接続して原因調査ができる仕組みになっているのです。 | ||||||||||||||
| 現在の接続数確認方法 | ||||||||||||||
先ほどの説明でmax_connectionsの設定値はわかりました。それでは今、どれくらいの数のMySQLクライアントが接続しているでしょうか。これについても、前回お話したように「mysqladmin」コマンドで取得可能です。 Threads_cachedについては別途チューニング項目として取り上げますので後に譲るとして、その他のパラメータは以下の意味を持ちます。
表1:各パラメータの意味 Max_used_connectionsはともかく、「スレッドって何?」という疑問が湧くかもしれません。ここでは単純化のために「スレッド数=MySQLクライアントの接続数」と理解してください。 例えば図2の取得した情報を読み解くと「現在接続しているMySQLクライアントは2で、そのうち処理を実行中のものは1。これまでに接続された総数は12で、そのうち同時に接続された最大値は3である」となります。 | ||||||||||||||
| 1 2 3 次のページ | ||||||||||||||
| ||||||||||||||
| ||||||||||||||
| ||||||||||||||



