よくある質問
「Too many connections」が出たとき
2026年8月20日

レン
「Too many connections」ってエラーが出た。上限を上げればいいの?

プロクラ
その前に確認しよう。数字を上げるのは簡単だけど、原因が別にある場合は、上げても同じことが起きる。しかもメモリを余計に食うようになる。
何が起きているのか

プロクラ
データベースは、同時に受け付けられる接続の数に上限を持っている。それを超えると、新しい接続を断る。断られた側のアプリが、このエラーを表示するんだ。
- 本当にアクセスが増えて、上限に達した
- 接続が返却されず、使われないまま溜まっている
- 重い処理が長時間、接続を握り続けている
- アプリ側の設定で、必要以上に接続を確保している

プロクラ
2つめと3つめが多いよ。アクセスが増えていないのにこのエラーが出るなら、ほぼこちら。数字を上げても解決しない。
今の状態を見る
- 現在の接続一覧を表示して、何が繋いでいるかを見る
- 長時間そのままの接続が並んでいないか
- 同じ処理が大量に並んでいないか
- 上限の設定値と、実際の同時接続数を比べる

プロクラ
一覧に、実行時間が長いものや、待機したままのものが並んでいたら、原因はそちらだよ。そこを直すほうが、上限を上げるより確実に効く。
上限を上げる場合
上限に達したとき、単に数字を大きくするのは対症療法です。1つの接続が使うメモリがあるため、増やせばその分メモリを消費します。上限を上げてメモリ不足で落ちる、という別の壊れ方に移るだけのことがあります。まず接続が閉じられずに溜まっていないかを疑ってください。

プロクラ
本当にアクセスが増えているなら、上げるのは妥当な判断。ただし、接続1つごとにメモリを使うことを忘れないで。上限を倍にすれば、必要なメモリも増える。
- サーバーの空きメモリを確認してから上げる
- 接続あたりの使用量と、上限の掛け算で見積もる
- 余裕なく上げると、今度はメモリ不足で強制終了される
- アプリ側の接続数の設定も、あわせて見直す
根本的に減らす

プロクラ
接続の数そのものを減らせれば、上限の問題は起きにくくなる。処理を軽くすることが、そのまま接続数の削減につながるんだ。
- 同じ結果を返す部分をキャッシュし、問い合わせ自体を減らす
- 重い問い合わせを見つけて、速くする
- 接続を使い回す仕組みを、正しく設定する
- 使い終わった接続を確実に返す

プロクラ
1つめが効果的だよ。頻繁に読まれるが、めったに変わらないデータをキャッシュするだけで、接続数は目に見えて減る。

レン
上げる前に、何が繋いでいるかを見るんだね。
一時的にしのぐ

プロクラ
今まさにサイトが止まっている、という状況なら、まず復旧を優先していい。原因の調査はそのあとでできる。
- 長時間居座っている接続を、個別に切断する
- アプリ側を再起動すると、握ったままの接続がまとめて解放される
- それでも埋まるなら、上限を一時的に上げて時間を稼ぐ
- 落ち着いてから、なぜ埋まったのかを必ず調べる

プロクラ
4つめを飛ばさないでね。上限を上げたまま放置すると、同じことが少し先で、より大きな規模で起きる。しかもそのときはメモリ不足を伴うことが多い。
VPSの料金を比較する
あわせて読みたい
- よくある質問データベースの容量が増え続ける:何が太っているのかデータそのものより、履歴や自動保存が容量を占めていることが多くあります。何が大きいかを調べる方法と、消してよいもの・消してはいけないものを解説します。
- よくある質問プロセスが勝手に消える:OOM Killerの記録を読むメモリが尽きたときOSがプロセスを強制終了する仕組みです。記録の探し方、なぜデータベースが狙われやすいのか、そして根本的な対処を解説します。
- よくある質問502 Bad Gatewayが出るとき、どこを見るか前段のWebサーバーは動いているのに、その先が応答していない状態です。どちらが落ちているかの切り分けと、原因になりやすい5つの場所を解説します。
- よくある質問sudoができなくなった:設定を壊したときの復旧管理者権限が使えなくなると、その設定を直すこともできなくなります。この行き止まりから抜ける方法と、そもそも壊さないための編集手順を解説します。
サーバーを触る前に押さえておきたいこと
姉妹サイトの、この記事と相性のいいページです。
- ネットワーク入門
IPアドレス・ポート・DNSの基礎 — prodou.net
- Linuxコマンド入門
ls / cd / grep などを疑似ターミナルで試しながら学べる — prodou.net
- CIDR Calculator
ファイアウォールの許可レンジを計算する — toolkitbox.net