Wondering how to resolve ‘Mysql Errcode: 24 – Too many open files’? We can help you.
As part of our Server Management Services, we assist our customers with several MySQL queries.
Today, let us see how to fix this error in Plesk.
Mysql Errcode: 24 – Too many open files
Typically, error might look as shown below:
Error: SQLSTATE[HY000]: General error: 23 Out of resources when opening file ‘/tmp/#***.MYD’ (Errcode: 24 – Too many open files)
[ERROR] /usr/sbin/mysqld: Can’t open file: ‘./usr_web587_1/etqvi_languages.frm’ (errno: 24 – Too many open files)
Failed to process database ‘wordpress_f’ from domain ‘example.com’: MySQL error 1018: Can’t read dir of ‘./wordpress_f/’ (errno: 24 “Too many open files”) executing query: SHOW TABLE STATUS FROM `wordpress_f`
[ERROR] Error in accept: Too many open files
DB query failed: SQLSTATE[HY000]: General error: 1016 Can’t open file: ‘./psa/misc.frm’ (errno: 24), query was: select param, val from misc
You can see this error in the mysql error log while performing backups.
- An error message related to MySQL service appears in one of these log files:
/var/log/plesk/panel.log
/var/log/mysql/error.log
/var/log/mariadb/mariadb.log
/var/log/syslog
- Disk usage statistics in Plesk is not calculated with one of the errors above.
- MySQL service goes down periodically.
- Plesk fails to load or operations with MySQL databases (for example backup) fail with one of the following error messages:
ERROR: PleskDBException: Unable to connect to database: mysql_connect(): MySQL server has gone away (Error code: 2006) (Abstract.php:69)
DB query failed: SQLSTATE[HY000]: General error: 23 Out of resources when opening file ‘/tmp/#sql_2ff_0.MAI’ (Errcode: 24 “Too many open files”), query was: DESCRIBE `sessions`
- A Plesk backup is create with the following warning:
WARNING : (mysql object ‘johndoe_opencart_e’) Not all the data was backed up into /var/lib/psa/dumps/clients/john_doe/domains/example.com/databases/johndoe_opencart_e_1 successfully. mysqldump: Couldn’t execute ‘show table status like ‘address”: Can’t read dir of ‘./john_doe_opencart_e/’ (errno: 24 – Too many open files) (1018)
When MySQL fails to open required files, the process gets hanged and systemd fails to stop MySQL process.
How to resolve?
Let us how our Support Techs found solution for this error in Plesk and Directadmin servers.
Mysql Errcode: 24 – Too many open files in Plesk.
With MariaDB installed
- Firstly, connect to the server via SSH.
- Modify MariaDB startup script:
# systemctl edit mariadb
- Set open files limit for the MariaDB service:
[Service]
LimitNOFILE=8192
- Restart the MariaDB service:
# systemctl restart mariadb
- Verify the changes:
# egrep “open files” /proc/$(cat `plesk db -Ne “show variables like ‘pid_file'” | awk ‘{print $2}’`)/limits
Max open files 8192 8192 files
With MySQL installed
- Firstly, connect to the server via SSH.
- Modify MySQL startup script:
# systemctl edit mysql
- Set open files limit for the MySQL service:
[Service]
LimitNOFILE=8192
- Restart the MySQL service:
# systemctl restart mysql
- Verify the changes:
# egrep “open files” /proc/$(cat `plesk db -Ne “show variables like ‘pid_file'” | awk ‘{print $2}’`)/limits
Max open files 8192 8192 files
Mysql Errcode: 24 – Too many open files in Directadmin
Some of solutions provided by our Support Techs in Directadmin.
1.Edit /etc/init.d/mysqld and add this to the top, after #!/bin/sh
ulimit -HSn 1024
ulimit -HSn 32768
ulimit -HSn 1024000
Which should force it to try and set it as high as it can go. If one of the value is too high, delete that line, or lower the value.
2.Check /etc/my.cnf. Under the [mysqld] section, if you have a open_files_limit variable, increase it, eg:
open_files_limit=32768
Then restart mysqld.
3.Confirm in mysql itself by checking the open_files_limit variable to ensure it’s increased, by running the SQL query:
Show global variables like ‘open%’;
[Finding it hard to fix? We’d be happy to assist you]
Conclusion
In short, today we saw how our Support Techs resolved MySQL error in Plesk and DirectAdmin.
0 Comments