If you get a
Too many connections error
when you try to connect to the mysqld
server, this means that all available connections are in use
by other clients.
The number of connections permitted is controlled by the
variable. Beginning with MySQL 5.1.15, its default value is
151 to improve performance when MySQL is used with the Apache
Web server. (Previously, the default was 100.) If you need to
support more connections, you should set a larger value for
mysqld actually permits
clients to connect. The extra connection is reserved for use
by accounts that have the
privilege. By granting the
SUPER privilege to
administrators and not to normal users (who should not need
it), an administrator can connect to the server and use
SHOW PROCESSLIST to diagnose
problems even if the maximum number of unprivileged clients
are connected. See Section 220.127.116.11, “SHOW PROCESSLIST Syntax”.
The maximum number of connections MySQL can support depends on the quality of the thread library on a given platform, the amount of RAM available, how much RAM is used for each connection, the workload from each connection, and the desired response time. Linux or Solaris should be able to support at 500 to 1000 simultaneous connections routinely and as many as 10,000 connections if you have many gigabytes of RAM available and the workload from each is low or the response time target undemanding. Windows is limited to (open tables × 2 + open connections) < 2048 due to the Posix compatibility layer used on that platform.