Bonjour,

sur un serveur web, j'ai un Mysql qui fait une espèce de bufferoverflow. Je suis dev. App et pas forcément spécialisé en système, du coup je demande à ceux qui connaissent.

Après 1 jour de fonction, je constate de grands ralentissements sur l'application web. Je vais vérifier le serveur et je trouve ça :


Nom : htop_1.png
Affichages : 163
Taille : 171,0 Ko

Si je restart le service mysql la RAM reste pleine :

Nom : htop_2.png
Affichages : 159
Taille : 120,0 Ko

Si je relance la machine, je récupère ma RAM :

Nom : htop_3.png
Affichages : 162
Taille : 152,7 Ko

Et quand Mysql a redémarré, ça roule :

Nom : htop_4.png
Affichages : 162
Taille : 162,5 Ko

Ensuite, quand je lance l'application, il fait les premières requêtes qui chargent 100M de ram. Puis à chaque requête, il charge env. 60M puis libère 50M. Donc à force de faire des requêtes, la RAM se remplit doucement.

La machine est un CentOS Linux release 7.4.1708 (Core), Mysql en 5.6.39

Le my.cnf est :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
 
[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
#innodb_buffer_pool_size = 16M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
#Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 2M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
 
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
 
# Recommended in standard MySQL setup
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
 
max_allowed_packet = 20M
query_cache_size = 268435456
query_cache_type=1
query_cache_limit=1048576
 
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
Alors voilà, j'espère qu'une bonne âme pourra m'aider !