FLUSH |
Vider |
---|---|
MySQL |
Syntaxe
FLUSH [NO_WRITE_TO_BINLOG | LOCAL] { flush_option [, flush_option] ... | { TABLES | TABLES tbl_name [, tbl_name] ... | TABLES WITH READ LOCK | TABLES tbl_name [, tbl_name] ... WITH READ LOCK | TABLES tbl_name [, tbl_name] ... FOR EXPORT } } |
Paramètres
Nom | Description | |
---|---|---|
flush_option | Ce paramètre permet d'indiquer une option de vidage correspondant à l'une des options suivantes : | |
Option | Description | |
BINARY LOGS | Cette option permet d'indiquer qu'il faut fermer et rouvrir n'importe quel fichier binaire de journal de bord sur lequel le serveur écrit. | |
DES_KEY_FILE | Cette option permet d'indiquer qu'il faut recharger les clefs DES dans le fichier spécifié avec l'option --des-key-file au démarrage du serveur. | |
ENGINE LOGS | Cette option permet d'indiquer qu'il faut fermer et rouvrir journal de bord pour n'importe quel moteur d'entreposage de données. | |
ERROR LOGS | Cette option permet d'indiquer qu'il faut fermer et rouvrir n'importe quel fichier d'erreur de journal de bord sur lequel le serveur écrit. | |
GENERAL LOGS | Cette option permet d'indiquer qu'il faut fermer et rouvrir n'importe quel requête générale de journal de bord sur lequel le serveur écrit. | |
HOSTS | Cette option permet d'indiquer qu'il faut vider le cache de l'hôte. | |
LOGS | Cette option permet d'indiquer qu'il faut fermer et rouvrir n'importe quel fichier sur lequel le serveur écrit. | |
OPTIMIZER_COSTS | Cette option permet d'indiquer qu'il faut relire les tables de modèles de coût afin que l'optimiseur commence à utiliser les estimations de coûts actuelles étant entreposées. | |
PRIVILEGES | Cette option permet d'indiquer qu'il faut recharger les privilèges des tables de droits dans la base de données système de MySQL. | |
QUERY CACHE | Cette option permet d'indiquer qu'il faut défragmenter le cache de requête pour mieux utiliser sa mémoire. | |
RELAY LOGS [FOR CHANNEL channel] | Cette option permet d'indiquer qu'il faut fermer et rouvrir n'importe quel fichier de journal de bord de relais sur lequel le serveur écrit. | |
SLOW LOGS | Cette option permet d'indiquer qu'il faut fermer et rouvrir n'importe quel requête lente contenu dans le journal de bord sur lequel le serveur écrit. | |
STATUS | Cette option permet d'indiquer qu'il faut ajouter les valeurs de variables d'état de session du processus léger en cours aux valeurs globales et réinitialiser les valeurs de session à zéro. | |
USER_RESOURCES | Cette option permet d'indiquer qu'il faut réinitialiser tous les utilisateurs par heure à zéro. | |
tbl_name | Ce paramètre permet d'indiquer un nom de table. | |
TABLES tbl_name [, tbl_name] ... | Ce paramètre permet d'indiquer qu'il faut uniquement vider les noms de tables spécifiés. | |
FLUSH TABLES WITH READ LOCK | Ce paramètre permet d'indiquer qu'il faut fermer toutes les tables ouvertes et verrouiller toutes les tables pour toutes les bases de données avec un verrou de lecture global. | |
FLUSH TABLES tbl_name [, tbl_name] ... FOR EXPORT | Ce paramètre permet d'indiquer qu'il faut s'assurer que les modifications apportées aux tables spécifiés ont été vidées sur le disque afin que des copies de tables binaires puissent être effectuées pendant l'exécution du serveur. Ce paramètre est uniquement disponible avec une table de type InnoDB. |
Description
Cette instruction permet de vider le système de cache interne du MySQL. Ainsi, l'instruction FLUSH comporte plusieurs variantes permettant d'effacer ou de recharger divers caches internes, de vider des tables ou d'acquérir des verrous.
Remarques
- Pour pouvoir utiliser l'instruction FLUSH, vous devez disposer de privilège RELOAD. De plus, certaines options de vidage peuvent nécessité des privilèges supplémentaires.
- Par défaut, le serveur écrit des instructions FLUSH dans le journal de bord afin qu'elles soit répliquées sur les serveurs esclaves de réplication. Par conséquent, pour supprimer le journal de bord, vous devez spécifié le mot clef optionnel NO_WRITE_TO_BINLOG ou son alias LOCAL. Enfin, les instructions «FLUSH LOGS», «FLUSH TABLES WITH READ LOCK» (avec ou sans liste de tables) et «FLUSH TABLES tbl_name ... FOR EXPORT» ne sont en aucun cas écrits dans le journal de bord binaire car ils provoqueraient des problèmes s'ils étaient répliqués sur un serveur esclave.
- Il n'est pas possible d'utiliser l'instruction FLUSH dans des fonctions STORED ou des déclencheurs, toutefois, vous pouvez utiliser l'instruction FLUSH dans les procédures STORED, tant que celle-ci ne sont appelées à partir de fonctions ou de déclencheurs.
- L'instruction FLUSH provoque un commit implicite. Ainsi, vous n'avez pas besoin d'indiquer une instruction «COMMIT».
- L'utilitaire mysqladmin fournit un interface de ligne de commande pour certaines opérations de vidage, en utilisant les paramètres flush-hosts, flush-logs, flush-privileges, flush-status et flush-tables.
- L'envoi d'un signal SIGHUP au serveur MySQL provoque plusieurs opérations de vidage semblables à l'instruction FLUSH.
- L'instruction RESET est similaire à l'instruction FLUSH, mais provoque des opérations plus poussées.
Voir également
Article - Les géants de l'informatique - Oracle
Références
MySQL - Référence, Edition Micro Application, Nicolas Rivereau, Antoine Pichot, 2002, ISBN: 2-7429-2560-0, page 905.
MySQL: The definitive guide to using, programming, and administering MySQL 4 databases - Second Edition, Paul Dubois, 2003, ISBN: 0-7357-1212-3, page 867
Dernière mise à jour : Lundi, le 14 septembre 2015