Je suis sur un serveur VPS Virtuozzo avec :
8GB RAM
6 CPU
Disque dur SSD
Debian 8.8
PHP 5.6.30
MySQL 5.5.55
Il n'y a qu'un seul site web qui est desservi.
Il s'agit d'un site web wordpress avec SSL qui contient environ 22000 articles.
Il reçoit un trafic moyen, environ 8 000 utilisateurs, 18 000 pages vues par jour.
En raison de la nature du site web, nous recevons beaucoup de mauvaises requêtes de robots et de tentatives de piratage. fail2ban est configuré et rapporte bien.
top -i indique parfois que le CPU% de mysql est de 200.
Rapports Virtuozzo
Utilisation de l'unité centrale 99,9
Moyenne de la charge du CPU 7,13, 7,42, 6,97
Mémoire 42
Par conséquent, à un moment donné, Apache s'arrête et redémarre.
my.cnf :
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
#bind-address = 127.0.0.1
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8
myisam-recover = BACKUP
max_connections = 100
#table_cache = 64
#thread_concurrency = 10
query_cache_limit = 1M
query_cache_size = 128M
tmp_table_size = 256M
max_heap_table_size = 256M
table_open_cache = 3200
#general_log_file = /var/log/mysql/mysql.log
#general_log = 1
log_error = /var/log/mysql/error.log
slow_query_log_file = /var/log/mysql/mysql-slow.log
slow_query_log = 1
#long_query_time = 2
#log_queries_not_using_indexes
#server-id = 1
#log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
#binlog_do_db = include_database_name
#binlog_ignore_db = include_database_name
innodb_buffer_pool_size = 5G
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[mysql]
#no-auto-rehash # faster start of mysql but no tab completition
[isamchk]
key_buffer = 16M
!includedir /etc/mysql/conf.d/
Le journal des requêtes lentes ne signale aucune requête lente.
(fichier my.cnf configuré par un expert en administration de serveur que j'ai engagé, car je n'en suis pas un)
MySQL est-il mal configuré ?
MISE A JOUR : J'ai essayé de désactiver tous les plugins et d'appliquer le thème de base. Il n'y a pas de plugin particulier qui cause ce problème. Il va sans dire que l'utilisation de l'unité centrale était plus faible, mais aussi la charge de mémoire vive. D'ailleurs, s'il n'y a pas de plugins et que nous appliquons le thème de base, il n'y a pas autant d'engagement de la part des utilisateurs. Nous ne pouvons pas atteindre 200 utilisateurs par minute avec la configuration de base afin de déboguer correctement...