kostenloser Webspace werbefrei: lima-city


MySql-Server meldet "Too many open files"

lima-city: kostenloser WebspaceForumHeim-PCSoftware

  1. Autor dieses Themas

    flmap

    Benutzer, kostenlos Webspace Bettler

    110 Gulden

    5 positive Bewertungen
    0

    flmap hat kostenlosen Webspace.

    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.

    $ cat /proc/(PID from mysqld)/limits | grep open
    Max open files            1024                 4096                 files
    Für den mysqld-Prozess greift das erhöhte Limit also leider nicht.
    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
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. muellerlukas

    Kostenloser Webspace von muellerlukas

    Benutzer, kostenlos WebspaceBenutzer, kostenlos WebspaceBenutzer, kostenlos WebspaceBenutzer, kostenlos Webspace Haudegen

    5285 Gulden

    137 positive Bewertungen
    0

    muellerlukas hat kostenlosen Webspace.

    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
  4. Autor dieses Themas

    flmap

    Benutzer, kostenlos Webspace Bettler

    110 Gulden

    5 positive Bewertungen
    0

    flmap hat kostenlosen Webspace.

    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
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!