sqlstate - too many connections mysql windows
mySQL Error 1040: demasiada conexión (8)
Compruebe si su aplicación actual en ejecución aún está accediendo a su mysql y ha consumido todas las conexiones de base de datos.
Así que si intenta acceder a mysql desde el entorno de trabajo, obtendrá el error "demasiadas conexiones".
detenga su aplicación web en ejecución actual que contiene todas esas conexiones de base de datos y luego se resolverá su problema.
Cómo solucionar estos, "SQL Error 1040: demasiada conexión", incluso trato de poner
max_user_connection=500
sigue siendo "demasiada conexión"
En tu programa habrías abierto las conexiones y dejado abierto sin cerrarlo.
Me enfrenté a un mismo problema y finalmente me identificé.
He añadido este código, después de intentar atrapar.
finally{
try {
rs.close();
p.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Este error se produce debido a que el límite de conexión alcanza el límite máximo, definido en el archivo de configuración my.cnf
.
Para corregir este error, inicie sesión en MySQL como usuario root
(Nota: puede iniciar sesión como root, ya que mysql pre-asignará una conexión adicional para el root user
) y aumente la variable max_connections utilizando el siguiente comando:
SET GLOBAL max_connections = 500;
Este cambio estará allí, hasta el próximo reinicio del servidor. Para que este cambio sea permanente, debe modificarlo en su archivo de configuración. Usted puede hacer esto por,
vi /etc/my.cnf
[mysqld]
max_connections = 500
Este artículo ha detallado la solución paso a paso para corregir este error . Échale un vistazo, espero que te pueda ayudar. Gracias.
Prueba esto :
abra el terminal y escriba este comando: sudo gedit /etc/mysql/my.cnf
Pegue la línea en el archivo my.cnf: set-variable=max_connections=500
Si se está quedando sin conexiones como esta, es muy probable que no esté cerrando las conexiones que tiene abiertas.
Revise el código que abre las conexiones y asegúrese de que las conexiones se cierren tan pronto como sea práctico. Por lo general, desea utilizar la palabra clave de uso alrededor de cualquier cosa que implemente IDisposable (incluidas las conexiones de base de datos) para garantizar que dichos objetos se eliminen tan pronto como abandonen el ámbito donde se necesitan.
Puede verificar el número actual de conexiones activas con esta consulta:
show processlist
Referencia: MySQL mostrar estado - conexiones activas o totales?
Vale la pena saber que si se queda sin espacio de disco utilizable en su partición o unidad de servidor, esto también hará que MySQL vuelva a funcionar con este error. Si está seguro de que no es el número real de usuarios conectados, el siguiente paso es verificar que tenga espacio libre en la unidad / partición de su servidor MySQL.
max_connections
cambiar max_connections
para aumentar el total de conexiones permitidas.
Y establezca max_user_connections
nuevamente a predeterminado 0 => sin límite a menos que necesite limitar esto por conexiones de usuario.
MySQL: ERROR 1040: Demasiadas conexiones
Básicamente, esto indica que MySQL maneja el número máximo de conexiones simultáneamente y, de forma predeterminada, maneja 100 conexiones simultáneamente.
Las siguientes razones hacen que MySQL se quede sin conexiones.
Consultas lentas
Técnicas de almacenamiento de datos
Mala configuración de MySQL
Pude superar estos problemas haciendo lo siguiente.
Abra la MySQL command line tool
y escriba
show variables like "max_connections";
Esto te devolverá algo como esto.
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 100 |
+-----------------+-------+
Puede cambiar la configuración a, por ejemplo, 200 emitiendo el siguiente comando sin tener que reiniciar el servidor MySQL.
set global max_connections = 200;
Ahora, cuando reinicie MySQL la próxima vez, usará esta configuración en lugar de la predeterminada.
Tenga en cuenta que el aumento del número de conexiones aumentará la cantidad de RAM necesaria para que se ejecute MySQL.