Ubuntu 16.04, Mysql 5.7 исправление проблемы с open_files_limit.
Если у вас возникает проблема «Error in accept: Too many open files» в вашей базе данных, Mysql или MariaDB, то вы наверно пытались увеличить в конфиге параметр open_files_limit, но вот не задача, после перезагрузки сервера, параметр остается фиксированным — 1024.
Для исправления в Ubuntu 16.04 ( так же актуально для более ранних версий ), сделайте следующие действия, от рута:
Посмотрите что записано в /etc/security/limits.conf
nano /etc/security/limits.conf
Увеличьте текущие лимиты и добавьте лимиты для Mysql, я сделал мягкий лимит 24000, жесткий 35000
#@student - maxlogins 4 * hard nofile 35000 * soft nofile 24000 root hard nofile 35000 root soft nofile 24000 mysql hard nofile 35000 mysql soft nofile 24000 # End of file
Дальше откроем /lib/systemd/system/mysql.service
nano /lib/systemd/system/mysql.service
Добавьте в [Service]
LimitNOFILE=35000
Перезапустим сервисы:
systemctl daemon-reload service mysql restart
Проверим поменялись ли лимиты:
mysql -u root -p show variables like 'open_files_limit';
Станьте первым!