MySql-Server meldet "Too many open files"
lima-city → Forum → Heim-PC → Software
angezogenen parameter
anzahl
betriebssystem
code
datei
erfolgreich code
file
folgenden ausgaben
folgenden zeilen
internet
limit
log
maximale anzahl
problem
recherche
rechner
run
server
set
url
-
Hallo zusammen,
ich habe einen Rechner mit Ubuntu (16.04.2) und MySql (5.7.18) aufgesetzt.
Der MySql-Server meldet mir jedoch "Too many open files".
Im Betriebssystem habe ich daher die Anzahl der maximal zu öffnenden Dateien bereits höher gesetzt, und den Rechner neu gestartet.
Den folgenden Ausgaben nach, wohl auch erfolgreich.
root:~# ulimit -a | grep open open files (-n) 24000 su - mysql mysq:~$ ulimit -a | grep open open files (-n) 24000 mysql:~$ sleep 2m & mysql:~$ cat /proc/(PID from sleep)/limits Limit Soft Limit Hard Limit Units Max open files 24000 32000 files
In die Konfiguration vom MySql-Server habe ich die maximale Anzahl der zu öffnenden Dateien ebenfalls erhöht.
conf.d/mysqld.cnf:
[mysqld] open_files_limit = 24000 ...
mysql.conf.d/mysqld.cnf:
[mysqld] user = mysql open_files_limit = 24000 ...
Wenn ich mir die angezogenen Parameter anzeigen lasse, dann sehe ich das erhöhte Limit auch.
mysql:~$ /usr/sbin/mysqld --print-defaults /usr/sbin/mysqld would have been started with the following arguments: --open_files_limit=24000 --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306 --basedir=/usr --datadir=/media/HD/mysql --tmpdir=/tmp --lc-messages-dir=/usr/share/mysql --skip-external-locking --bind-address=127.0.0.1 --key_buffer_size=32M --max_allowed_packet=32M --thread_stack=192K --thread_cache_size=8 --myisam-recover-options=BACKUP --query_cache_limit=1M --query_cache_size=16M --log_error=/var/log/mysql/error.log --expire_logs_days=10 --max_binlog_size=100M
Problem:
Wenn ich mir jedoch den Wert von "Max open files" im Proc-Filesystem zu dem MySql-Server-Prozess ansehe, so wird mir jedoch der zu niedrige Wert von 1024 angezeigt.
Für den mysqld-Prozess greift das erhöhte Limit also leider nicht.$ cat /proc/(PID from mysqld)/limits | grep open Max open files 1024 4096 files
Den gleichen Wert erhalte ich, wenn ich das Limit via SQL-Befehl abfrage.
mysql> SHOW VARIABLES LIKE 'open%'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | open_files_limit | 1024 | +------------------+-------+ 1 row in set (0,00 sec)
Hat jemand eine Ahnung, wie ich die maximal erlaubte Anzahl die öffne baren Dateien im MySql-Server erfolgreich erhöhen könnte ?
Viele Grüße
Flmap
Beitrag zuletzt geändert: 17.5.2017 18:08:23 von flmap -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
flmap schrieb:
Im Betriebssystem habe ich daher die Anzahl der maximal zu öffnenden Dateien bereits höher gesetzt, und den Rechner neu gestartet.
Was heißt denn "im Betriebssystem"? Wo hast du denn was angepasst?
Auch das entsprechende Limit bei systemd? "LimitNOFILE=2400" in der Sektion "Service" in der entsprechenden Config für mysql wäre das wohl.
Beitrag zuletzt geändert: 18.5.2017 0:29:33 von muellerlukas -
Hallo Muellerlukas,
erst mal vielen Dank für Deine Antwort.
Sie war ein Volltreffer, und hat mein Problem gelöst.
Zuvor hatte ich einiges aufgrund meiner Recherchen im Internet ausprobiert.
Im Wesentlichen hatte ich jedoch in der Datei /etc/security/limits.conf die folgenden Zeilen an gehangen.
root soft nofile 24000 root hard nofile 32000 mysql soft nofile 24000 mysql hard nofile 32000
Nochmals vielen Dank
Flmap -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage