[gelöst] - probl. bei migration mariadb open_files_limit

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
fulltilt
Beiträge: 925
Registriert: 03.12.2006 20:10:57

[gelöst] - probl. bei migration mariadb open_files_limit

Beitrag von fulltilt » 16.07.2017 11:42:04

Debian9
MariaDB 10.1
DB Import von mariadb 10.0

Ich muss wegen eines Netzwerk Problems in ein anderes RZ umziehen, die Migration ist so gut wie fertig ... allerdings gibt es jetzt ein Problem mit mariadb open_files_limit

Code: Alles auswählen

mysql_upgrade --force
mysqlcheck: Error: Couldn't get table list for database db: Can't read dir of './db/' (errno: 24 "Too many open files")
habe jetzt folgendes versucht:

Code: Alles auswählen

mkdir /etc/systemd/system/mysql.service.d
nano /etc/systemd/system/mysql.service.d/override.conf
added:
LimitNOFILE=1024000
systemctl daemon-reload
systemctl restart mysql.service
bringt aber keine Änderung:
cat /proc/$(pgrep mysql)/limits | grep files
Max open files 16364 16364 files

was kann ich tun um das open_files_limit höher zu setzen?
Zuletzt geändert von fulltilt am 17.07.2017 09:29:22, insgesamt 1-mal geändert.
Debian: Testing
Desktop: KDE Plasma 5

reox
Beiträge: 1251
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz
Kontaktdaten:

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von reox » 16.07.2017 17:36:30

ich denke du musst die open files über ulimits setzen. Was sagt denn ulimit -n?

Benutzeravatar
fulltilt
Beiträge: 925
Registriert: 03.12.2006 20:10:57

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von fulltilt » 16.07.2017 18:06:32

Danke!

ulimit -n
1024

das hat bisher alles keine Wirkung gezeigt ... wo kann ich noch was machen?

Code: Alles auswählen

/etc/security/limits.conf

* soft nofile 1024000
* hard nofile 1024000
* soft nproc 1024000
* hard nproc 1024000
mysql soft nofile 1024000
mysql hard nofile 1024000
Debian: Testing
Desktop: KDE Plasma 5

reox
Beiträge: 1251
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz
Kontaktdaten:

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von reox » 16.07.2017 20:28:58

aber scheinbar sind die änderungen ja nicht durchgegangen, wenn du 102400 angibst und es nur 1024 sind?
was passiert wenn du ulimit -n <anzahl> für den user ausführst?

Benutzeravatar
fulltilt
Beiträge: 925
Registriert: 03.12.2006 20:10:57

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von fulltilt » 17.07.2017 07:31:42

also auch wenn ich ulimit höher setzte und Mysql neu starte macht das keine Änderung ...
cat /proc/$(pgrep mysql)/limits | grep files
Max open files 16364 16364 files

AWstats crons können nicht mehr richtig ausgeführt werden too many open files

Es muss doch eine Möglichkeit geben die definierten max_open_files bei Debian9 zu akkzeptieren?
Debian: Testing
Desktop: KDE Plasma 5


Benutzeravatar
fulltilt
Beiträge: 925
Registriert: 03.12.2006 20:10:57

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von fulltilt » 17.07.2017 08:10:05

heisenberg hat geschrieben: ↑ zum Beitrag ↑
17.07.2017 08:02:09
Probier mal im systemd-Unit-File den Wert höher zu setzen. Siehe hier:

https://fredrikaverpil.github.io/2016/0 ... ce-limits/
Danke, ich bin mit Systemd Scripts nicht wirklich vertraut ...
wie müsste das dann aussehen für mysql bzw mariadb 10.1?

Code: Alles auswählen

[Unit]
Description=Tractor Blade Service
Wants=network.target network-online.target autofs.service
After=network.target network-online.target autofs.service

[Service]
Type=simple
User=farmer
ExecStart=/opt/pixar/Tractor-2.2/bin/tractor-blade --no-sigint --debug --log /logserver/tractor/%H.log --supersede --pidfile=/var/run/tractor-blade.pid
LimitNOFILE=500000
LimitNPROC=500000
PIDFile=/var/run/tractor-blade.pid

[Install]
WantedBy=multi-user.target
Debian: Testing
Desktop: KDE Plasma 5

MSfree
Beiträge: 2626
Registriert: 25.09.2007 19:59:30

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von MSfree » 17.07.2017 08:20:52

fulltilt hat geschrieben: ↑ zum Beitrag ↑
17.07.2017 07:31:42
Es muss doch eine Möglichkeit geben die definierten max_open_files bei Debian9 zu akkzeptieren?
Es gibt zwei Grenzwerte, der eine ist der sytemweite Grenzwert, der alle im System offenen Dateien begrenzt. Dieser kann mit

Code: Alles auswählen

sysctl -w fs.file-max=AnzahlOffenerDateien
gesetzt werden, bzw. fs.file-max=AnzahlOffenerDateien kann in die Datei /etc/sysctl.conf eingetragen werden, um bei nächsten Boot auf den Wert gesetzt zu werden.

Die zweite Grenze ist das ulimit, das es in "hard" und in "soft" gibt. Der o.g. Kernelparameter begrenzt aber in jedem Fall das ulimit. Wenn der Kernelparameter z.B. auf 10000 steht, dann nützt ein ulimit von 20000 gar nichts, es gilt in jedem Fall das Kernelmaximum.

Noch etwas zu ulimit. Der Ulimitwert gilt immer nur für die shell, die auch den Server startet. Es nützt also nichts, nach dem Start des Servers sich einzulogen und dort das ulimit raufzusetzen, davon bekommt der Serverprozeß nichts mit. Am einfachsten ist es in diesem Fall das Skript, das deinen Server startet, um den ulimit-Aufruf zu ergänzen.

Alternativ kann man die Anzahl der offenen Dateien auch in der .service-Datei unter /lib/systems/system setzen, in dem man folgende Zeile dort einbaut:

Code: Alles auswählen

LimitNOFILE=     ulimit -n             Number of File Descriptors

Benutzeravatar
fulltilt
Beiträge: 925
Registriert: 03.12.2006 20:10:57

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von fulltilt » 17.07.2017 08:37:07

Dank dir,
ja die fs.file-max = 1024000 hatte ich gestern bereits gesetzt (auch nach reboot keine auswirkung).
/lib/systems/system existiert bei mir gar nicht ...

Code: Alles auswählen

ulimit -n
1024000
hatte aber keinen Einfluss auf mysql

Code: Alles auswählen

cat /proc/$(pgrep mysql)/limits | grep files
Max open files            16364                16364                files 

Code: Alles auswählen

MariaDB [(none)]> SHOW VARIABLES LIKE 'open%';
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| open_files_limit | 16364 |
+------------------+-------+
Zuletzt geändert von fulltilt am 17.07.2017 09:01:09, insgesamt 1-mal geändert.
Debian: Testing
Desktop: KDE Plasma 5

Benutzeravatar
heisenberg
Beiträge: 1081
Registriert: 04.06.2015 01:17:27

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von heisenberg » 17.07.2017 08:57:53

/lib/systems/system
Das ist ein Tip(p)fehler. Soll heissen /lib/systemd/system/...

Damit sind die Unit-Dateien von systemd gemeint.

Benutzeravatar
fulltilt
Beiträge: 925
Registriert: 03.12.2006 20:10:57

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von fulltilt » 17.07.2017 09:04:41

OK, hab hier eine
/lib/systemd/system/mariadb.service

dort reinsetzen?

Code: Alles auswählen

LimitNOFILE=     ulimit -n        100000
Debian: Testing
Desktop: KDE Plasma 5

MSfree
Beiträge: 2626
Registriert: 25.09.2007 19:59:30

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von MSfree » 17.07.2017 09:05:47

heisenberg hat geschrieben: ↑ zum Beitrag ↑
17.07.2017 08:57:53
Das ist ein Tip(p)fehler. Soll heissen /lib/systemd/system/...
Ups, danke, "s" und "d" liegen aber auch verdammt dicht nebeneinander auf der Tastatur :mrgreen:

MSfree
Beiträge: 2626
Registriert: 25.09.2007 19:59:30

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von MSfree » 17.07.2017 09:12:28

fulltilt hat geschrieben: ↑ zum Beitrag ↑
17.07.2017 09:04:41
dort reinsetzen?

Code: Alles auswählen

LimitNOFILE=     ulimit -n        100000
So hatte ich das verstanden. Ich habe aber noch einen Link gefunden, der dir eventuell auch weiterhilft:
https://ma.ttias.be/increase-open-files ... h-systemd/

Benutzeravatar
fulltilt
Beiträge: 925
Registriert: 03.12.2006 20:10:57

Re: dringend - probl. bei migration mariadb open_files_limit

Beitrag von fulltilt » 17.07.2017 09:28:53

meine Güte ... das hamm die aber gut versteckt :mrgreen:
hat geklappt:

Code: Alles auswählen

cat /proc/$(pgrep mysql)/limits | grep files
Max open files            80000                80000                files
@heisenberg, du hast es echt drauf!
Danke
Debian: Testing
Desktop: KDE Plasma 5

Antworten