Mysql et open_file_limits

WRInaute impliqué
Bonjour,

Impossible de remonter cette valeur... J'ai fais toutes les modifs trouvées sur le net:

- Dans my.cnf (ajouté dans [mysql] et [mysql_safe]):

open_files_limit = 500000
open-files-limit = 500000

- Dans mysql.service:

LimitNOFILE = infinity
LimitMEMLOCK = infinity

- Dans sysctl.conf :

fs.file-max = 500000 à la fin

- Dans etc/secutiry/limits.conf:

* soft nproc 500000
* hard nproc 500000
* soft nofile 500000
* hard nofile 500000

Dans /etc/pam.d/common-session :

session required pam_unix.so
session required pam_limits.so

Et malgré cela, après reboot, j'ai toujours :

cat /proc/$(pgrep mysqld$)/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 257278 257278 processes
Max open files 65536 65536 files
Max locked memory unlimited unlimited bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 257278 257278 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us

Je ne sais plus quoi faire... Une idée?
 
WRInaute passionné
Bonjour,

tu peux toujours essayer de jouer avec "ulimit" directement dans le script d'init. Typiquement /etc/init.d/mysql sous Debian.
 
WRInaute impliqué
Bonjour,

J'ai essayé, même avec un ulimit -n xxxxxx, lorsque je vérifie ensuite ( cat /proc/$(pgrep mysqld$)/limits | grep files ) j'obtiens le chiffre inchangé...
 
WRInaute passionné
On est d'accord que le "ulimit" tu le mets dans le script de lancement de mysqld ?
 
WRInaute impliqué
Là pour le coup non, je l'ai tapé en ligne de commande. En le mettant dans le script de démarrage il le prendra en compte autrement?
 
WRInaute passionné
C'est probable oui. La plupart des scripts de lancement ré-initialisent l'environnement avant de lancer le soft. Il faut donc modifier le script en question pour y intégrer tes modifications.
 
WRInaute impliqué
Je viens de le faire (mis "ulimit -n 512000"), redémarré Mysql mais ça ne marche pas, j'ai toujours l'ancienne valeur qui s'affiche...
 
WRInaute discret
ok et c'est pour quel objectif ce que tu veux faire? est-tu sur d'avoir modifier les bons fichiers?
 
WRInaute impliqué
Oui, certain j'ai passé des jours sur le problème... Impossible de changer ce fichu paramètre!
 
WRInaute discret
et c'est dans quel but?
sur y'a pas deux installations à deux endroits différents?
arrive-tu à modifier un autre paramètre?
 
WRInaute passionné
Est-ce que le paquet «systemd-sysv» est installé, ou bien tu utilises l'ancien init ?
 
WRInaute impliqué
gotgot a dit:
et c'est dans quel but?
sur y'a pas deux installations à deux endroits différents?
arrive-tu à modifier un autre paramètre?

Dans le but d'arriver à ne plus avoir le nombre de fichiers est atteint (open file limits)
 
WRInaute impliqué
Alors, oui, si je modifie un autre pramètre dans my.cnf ça change en effet. Sauf open_file_limits qui est un vrai casse tête. Je pense en effet qu'il y a un doublon avec un paramètre système, c'est pourquoi dans les fichiers limits.conf session pam etc. j'ai également fait des modifs, mais niet! Nada! Rien!

Et sur la Debian 7 que j'avais, je pouvais allègrement dépasser les 65536 ...
Et j'ai déjà changé les paramètres dans /lib/systemd/system/mysql.service (voir mon post d"origine)... Mais sans succès non plus! :-(
 
Discussions similaires
Haut