Bobcares

Mysql Errcode: 24 – Too many open files

by | Jun 4, 2021

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.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF