Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Muitos erros de arquivos abertos no Ubuntu 8.04


Inicialmente, para identificar determinados limites de usuários ou grupos, você deve fazer o seguinte:
[email protected]:~# sudo -u mysql bash
[email protected]:~$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 71680
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 71680
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[email protected]:~$

A linha importante é:

arquivos abertos (-n) 1024

Como você pode ver, o fornecedor do seu sistema operacional envia esta versão com a configuração básica do Linux - 1024 arquivos por processo.

Isso obviamente não é suficiente para uma instalação ocupada do MySQL.

Agora, para corrigir isso, você deve modificar o seguinte arquivo:

/etc/security/limits.conf
mysql             soft    nofile           24000
mysql             hard    nofile           32000

Alguns tipos de Linux também requerem configuração adicional para que isso se mantenha nos processos daemon versus sessões de login. No Ubuntu 10.04, por exemplo, você também precisa definir os limites da sessão pam adicionando a seguinte linha a /etc/pam.d/common-session :
session required pam_limits.so