Plesk o el sitio web no funcionan correctamente debido al error "Unable to connect to database MySQL server has gone away"

Created:

2016-11-16 13:08:04 UTC

Modified:

2017-08-16 17:19:12 UTC

3

Was this article helpful?


Have more questions?

Enviar una solicitud

Plesk o el sitio web no funcionan correctamente debido al error "Unable to connect to database MySQL server has gone away"

Applicable to:

  • Plesk 12.5 for Linux
  • Plesk Onyx for Linux
  • Plesk 12.0 for Linux

Síntomas

No es posible acceder a Plesk o a un sitio web:

ERROR: PleskDBException: Unable to connect to database: mysql_connect(): MySQL server has gone away (Error code: 2006) (Abstract.php:69)

En panel.log se observan los siguientes errores:

ERR [1] SQLSTATE[HY000] [2006] MySQL server has gone away
ERR [1] Unable to connect to database: (Error code: 2006)

El archivo /var/log/mysql/error.log contiene los siguientes errores:

[ERROR] /usr/sbin/mysqld: Can't open file: './usr_web587_1/etqvi_languages.frm' (errno: 24 - Too many open files)

En /var/log/syslog puede verse uno de los siguientes errores:

[ERROR] /usr/sbin/mysqld: Can't open file: './usr_1/contrexx_voting_results.frm' (errno: 24 - Too many open files)

Failed to process database 'wordpress_f' from domain 'example.com': MySQL error 1018: Can't read dir of './wordpress_f/' (errno: 24 "Too many open files") executing query: SHOW TABLE STATUS FROM `wordpress_f`

[ERROR] Error in accept: Too many open files

systemd[1]: Stopping LSB: Start and stop the mysql database server daemon...
mysql[27839]: Stopping MariaDB database server: mysqld failed!

En el registro de errores de PHP puede verse el siguiente error:

ERROR: [pool example.com] cannot get uid for user 'root': Too many open files (24)

En /usr/local/psa/admin/logs/panel.log se aprecia el siguiente error:

Error: SQLSTATE[HY000]: General error: 23 Out of resources when opening file '/tmp/#***.MYD' (Errcode: 24 - Too many open files)

De forma periódica, MySQL deja de funcionar y no puede iniciarse sin reiniciar el propio servidor.

Causa

En el servidor MySQL se ha alcanzado el límite de archivos abiertos. Cuando MySQL no puede abrir los archivos correspondientes, el proceso se bloquea y systemd no puede detener el proceso MySQL.

Resolución

  • En el caso de un sistema V

Aumente open_files_limit en /etc/mysql/my.cnf para las secciones [mysqld] y [mysqld_safe] :

[mysqld]
open_files_limit = 1024000

[mysqld_safe]
open_files_limit = 1024000

Reinicie MySQL:

systemctl restart mysqld

O MariaDB:

systemctl restart mariadb

De ser necesario, efectúe mysqlcheck

  • En el caso de Systemd

Cree un directorio para los cambios del servicio MariaDB:

# mkdir -p /etc/systemd/system/mariadb.service.d/
# touch /etc/systemd/system/mariadb.service.d/limits.conf

Configure el límite de archivos abiertos de systemd para MariaDB.

# cat /etc/systemd/system/mariadb.service.d/limits.conf
[Service]
LimitNOFILE=1024000

Reinicie MariaDB y el cargador de daemons:

#systemctl daemon-reload

#systemctl restart mariadb
¿Tiene más preguntas? Enviar una solicitud
Inicie sesión para dejar un comentario.