Коды ошибок MySQL пишутся в лог, в некоторых случаях с пояснением, в некоторых случаях — без него. Расшифровать код может perror.
Коды ошибок MySQL
perror — утилита, которая устанавливается вместе с MySQL. Ей передается только номер ошибки.
Все сообщения об ошибках пишутся в лог, для этого его ведение должно быть включено.
Ошибки могут быть, например, такие, которые приведены ниже
tail -n 2 /var/log/mysql/mysql-error.log
17:45:52 [ERROR] mysqld: Can't open file: './1111/captcha.frm' (errno: 24)110312
17:45:52 [ERROR] mysqld: Can't open file: './1111/captcha.frm' (errno: 24)
В скобках указан код, он и передается perror
perror 24
OS error code 24: Too many open files
Из текста данной ошибки понятно в чем причина. В других случаях это может быть не так, по коду всегда можно получить подробную информацию.
Для устранения ошибки из примера нужно увеличивать значение, задаваемое директивой open_files_limit в /etc/mysql/my.cnf
Также следует проверить системные лимиты в /etc/security/limits.conf
В текущей сессии лимит устанавливается командой ulimit, которой передается ключ -n и численное значение.
ulimit -n 2048
Если установка open_files_limit не дает результата, причина обычно в ulimit.