Solutie pentru erro MySQL Can't open file './*.frm' (errno 24)

Uneori când construim un server MySQL, fără sa dam atenție la detalii mici si doar vrem sa îl putem online cât de repede posibil, pe termen lung o sa fim afectați cu întrețineri emergente nedorite sau cu instanța MySQL indisponibil. Din cauza motivelor menționate în paragraful precedent apăre eroare"Can't open file: './*.frm' (errno: 24)".

  • De ce primesc această eroare?
  • Ei bine, aceasta e o eroare comună atunci când instalați totul folosind parametrii default. "Can't open file: './*.frm' (errno: 24)" apare atunci când sistemul operațional a ajuns la valoarea maxima de fișiere deschise disponibila pentru utilizatorul care se execută serviciul MySQL.
  • Cum de a găsi valoarea maxima de fișiere deschise pentru utilizator meu MySQL?
  • Trebuie să vă conectați ca utilizatorul MySQL și emite următoarea comandă:
    [mysql@dch008tmp]# ulimit -n
    1024
  • Cum putem modifica valoarea maximă fișiere deschise pentru utilizator MySQL?
  • Pentru aceasta aveți nevoie să vă conectați ca utilizator root și editați fișierul "/etc/security/limits.conf". Iată cum o fac pentru MySQL meu ca el să poată deschide 25.000 de fișiere.
    mysql            hard    nofile          25000
  • Unde :
  • nofile - Numărul maxim de fișiere deschise hard - pentru forța aplicarea limitelor
  • Pentru ca instanța MySQL sa poată sa aplice noua valoare a parametrului trebuie să reporniți instanta MySQL.
  • După repornire, verificați dacă valoare parametrului open_files_limit cu ajutorul sintaxei de mai jos. De asemenea, e bine de știut ca instanta MySQL va aplică valorile parametrilor configurați pe servitorul unde MySQL executa, dacă nu-i specificați în fișierul de parametri my.cnf MySQL .
    mysql> show variables like 'open_files_limit';
    +------------------+-------+
    | Variable_name    | Value |
    +------------------+-------+
    | open_files_limit | 25000 |
    +------------------+-------+
    1 row in set (0.00 sec)
  • Dacă doriți ca acest parametru sa fie valabil în fișierul my.cnf trebuie să il adăugați valorile de mai jos în fișierul my.cnf.
  • Înainte de a face acest lucru ar trebui să verificați valoarea pe host pentru a vă asigura că parametrul MySQL nu o sa fie mai mare decât în Server.
    open-files-limit               = 25000
    Sper că acest articol a fost de ajutor.