Maison  >  Article  >  base de données  >  Parlons de plusieurs méthodes pour vider le cache MySQL

Parlons de plusieurs méthodes pour vider le cache MySQL

PHPz
PHPzoriginal
2023-04-19 14:15:493121parcourir

Effacement du cache MySQL : Comment libérer les ressources mémoire de MySQL

MySQL est actuellement une base de données très largement utilisée. À mesure que la quantité de données continue d'augmenter et que le nombre d'accès continue d'augmenter, le cache peut occuper trop d'espace et affecter celui du serveur. performances. Par conséquent, vider le cache MySQL dans ce cas peut améliorer considérablement l'efficacité de MySQL exécuté sur le serveur. Cet article vous présentera plusieurs méthodes pour vider le cache MySQL pour votre référence.

  1. Vider le cache key_buffer

Key_buffer est un cache du moteur de stockage MyISAM. Il est principalement utilisé pour mettre en cache les fichiers d'index couramment utilisés par MyISAM, ce qui peut grandement améliorer l'efficacité des requêtes. Si votre application comporte de nombreuses opérations d'écriture ou si le fichier d'index est trop volumineux, l'utilisation du cache de key_buffer peut être élevée. Vous pouvez vider le cache key_buffer via la commande suivante :

FLUSH TABLES WITH READ LOCK;
FLUSH QUERY CACHE;
RESET QUERY CACHE;
RESET MASTER;
  1. Clear query_cache cache

En plus du cache key_buffer, MySQL dispose d'une autre méthode de mise en cache query_cache, qui peut mettre en cache l'instruction de requête SELECT et stocker ses résultats dans le cache, Lorsque les utilisateurs effectuent une nouvelle requête, ils peuvent obtenir des données du cache, ce qui améliore considérablement l'efficacité des requêtes. Toutefois, ce cache n’est pas adapté aux opérations d’écriture à grande échelle. Vous pouvez vider le cache query_cache avec la commande suivante :

FLUSH QUERY CACHE;
  1. Clear innodb_buffer_pool cache

Les moteurs de stockage InnoDB utilisent souvent le cache innodb_buffer_pool pour mettre en cache les données et les index récemment utilisés afin que les demandes de requêtes ultérieures puissent être traitées plus rapidement. Cependant, si votre volume de données est trop important et que le cache occupe beaucoup, cela peut affecter l'efficacité de fonctionnement de MySQL. Vous pouvez vider le cache innodb_buffer_pool via la commande suivante :

SET GLOBAL innodb_buffer_pool_size=0;
SET GLOBAL innodb_buffer_pool_size=<<memory-size>>;

Parmi elles, < > est ce dont vous avez besoin. Définissez la taille du cache innodb_buffer_pool, par exemple 256 Mo.

  1. Redémarrez le service MySQL

Si MySQL utilise toujours beaucoup de ressources mémoire après avoir vidé le cache à l'aide de la méthode ci-dessus, vous pouvez essayer de redémarrer le service MySQL. Le redémarrage de MySQL permet à MySQL d'effacer d'abord toutes les occupations de la mémoire, garantissant ainsi que le cache occupe moins d'espace. Vous pouvez redémarrer le service MySQL via la commande suivante :

service mysql restart

Résumé

Lors de l'utilisation de la base de données MySQL, vider le cache peut libérer les ressources mémoire de MySQL et assurer le fonctionnement normal de MySQL. Qu'il s'agisse de vider le cache key_buffer, de vider le cache query_cache, de vider le cache innodb_buffer_pool ou de redémarrer le service MySQL, vous devez faire un choix en fonction de la situation réelle pour garantir le fonctionnement normal de MySQL sur le serveur et sans erreur. l'exécution des opérations connexes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn