Ah ... O problema conhecido.
Geralmente as pessoas começam a editar o arquivo "/etc/security/limits.conf", mas esquecem que este arquivo só se aplica aos usuários logados ativamente através do sistema pam.
Se você iniciar o banco de dados manualmente usando o script init, o proces do banco de dados herdará seus limites modificados, mas se o banco de dados for iniciado na inicialização ou iniciado por algo como systemd, ele não será.
Existem arquivos "/ etc / defaults / $ service para o Debian e" / etc / sysconfig / $ service para o RedHat. Esses arquivos são originados pelo script init antes que o daemon seja executado. Adicione ulimit -s unlimited
ou algo assim a esses arquivos. Os limites serão aplicados no shell do script de inicialização e afetarão o processo do banco de dados.
Kernel maxfiles deve ser definido também.