Ich habe diesen Fehler beim Migrieren einer großen Anzahl von Konten von einem cpanel-Server auf einen anderen erhalten.
[FEHLER] /usr/sbin/mysqld:Datei kann nicht geöffnet werden:‘./dbname/tablename.frm’ (Fehlernummer:24)
errno: 24
bedeutet, dass zu viele Dateien geöffnet sind. Es gibt eine MySQL-Variable namens „open_files_limit"
was zeigt, wie viele geöffnete Dateien in mysql standardmäßig erlaubt sind. Wir können diesen Wert nicht mit dem Befehl „Set“ aktualisieren, da diese Variable eine schreibgeschützte Variable ist.
root@server ~ # mysqladmin variables |grep -i open
| have_openssl | DISABLED | | innodb_open_files | 300 | | open_files_limit | 1024 | | table_open_cache | 64|
Um diesen Wert zu erhöhen, können wir ihn wie folgt in my.cnf einstellen (Sie können jeden gewünschten Wert oder erforderlichen Wert einstellen)
[mysqld]
open_files_limit = 9999
und speichern Sie dann den MySQL-Dienst und starten Sie ihn neu. Danach können Sie sehen, dass der Wert in der mysqladmin-Variablenliste geändert wurde und der Fehler aus dem mysql-Fehlerprotokoll verschwunden sein sollte.
root@server ~ # mysqladmin variables |grep -i open
| have_openssl | DISABLED | | innodb_open_files | 300 | | open_files_limit |9999|