Skip to main content
Enterprise applications
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Descriptores de archivos MySQL

Colaboradores

Para ejecutarse, el servidor MySQL necesita descriptores de archivo y los valores predeterminados no son suficientes.

Las utiliza para abrir nuevas conexiones, almacenar tablas en la caché, crear tablas temporales para resolver consultas complicadas y acceder a las persistentes. Si mysqld no puede abrir nuevos archivos cuando sea necesario, puede dejar de funcionar correctamente. Un síntoma común de este problema es el error 24, “Demasiados archivos abiertos”. El número de descriptores de archivo que mysqld puede abrir simultáneamente se define por el open_files_limit opción establecida en el archivo de configuración (/etc/my.cnf). Pero open_files_limit también depende de los límites del sistema operativo. Esta dependencia hace que la configuración de la variable sea más complicada.

MySQL no puede definir su open_files_limit opción superior a la especificada en ulimit 'open files'. Por lo tanto, debe establecer explícitamente estos límites en el nivel del sistema operativo para permitir que MySQL abra archivos según sea necesario. Hay dos formas de comprobar el límite de archivos en Linux:

  • La ulimit command le proporciona rápidamente una descripción detallada de los parámetros que se permiten o bloquean. Los cambios realizados por la ejecución de este comando no son permanentes y se borrarán tras un reinicio del sistema.

  • Cambios en la /etc/security/limit.conf el archivo es permanente y no se ve afectado por un reinicio del sistema.

Asegúrese de cambiar los límites duros y suaves para el usuario mysql. Los siguientes extractos son de la configuración:

mysql hard nofile 65535
mysql soft nofile 65353

En paralelo, actualice la misma configuración en my.cnf para utilizar completamente los límites de archivo abierto.