Easy-Micro


 
ESPACEMEMBRE MySQL
Maintenance

Maintenance et sauvegarde

Pour réaliser une opération de maintenance sur une table, on exécute aussi une requête.

Requête de maintenance
mysql> CHECK TABLE mabase.clients;

Suivant la réponses de la requête de maintenance, on réalisera ces requêtes:

Si message type est "une table pas fermée" dans un CHECK TABLE, faire un
mysql> FLUSH TABLES;

Note: la commande FLUSH vide les caches de MySQL. Par exemple, lors d'un changement d'adresse IP faire un FLUSH HOSTS; ou encore un FLUSH LOGS; pour fermer les fichiers de suivis actifs et en ouvrir de nouveaux. Pour vider les caches des tables en lecture: mysql> FLUSH TABLES WITH READ LOCK; après avoir vérouiller les tables en lecture "LOCK TABLES;" - "UNLOCK TABLES;" pour dévérouiller.
Voir la syntaxe de la commande FLUSH.

Si message type est "erreur" dans un CHECK TABLE, faire un
mysql> REPAIR TABLE clients;

MySQL Autre requête de maintenance

"Défragmenter" une table
mysql> OPTIMIZE TABLE clients;

Mise à jour des statistiques
mysql> ANALYZE TABLE clients;

Afficher la stucture d'une table
mysql> DESCRIBE articles;

Vider rapidement une table
mysql> TRUNCATE Table articles;

Interrompre un process en cours (numéro id obtenu avec un mysql> SHOW PROCESSLIST;)
mysql> KILL 8;
Attention: un kill user ou threads sur un utilisateur déjà connecté depuis son invite de commande (...bin> mysql -h 10.33.100.46 -u root2 -p) sera déconnecté. Mais si celui ci refait une requete aussitôt, il est reconnecté automatiquement.

Modifier une option du serveur (voir les options avec un mysql> SHOW VARIABLES;)
-> voir aussi le programme mysqladmin
mysql> SET max_connections=100;


Pour chercher une erreur dans une requête, on rajoute un EXPLAIN devant le SELECT existant
mysql>EXPLAIN SELECT * FROM clients;

Voir le temps d'exécution d'une requête (une sorte de PING pour MySQL)
mysql>SELECT BENCHMARK(1000000, "SELCT * FROM articles");

Afficher la base
mysql>SHOW DATABASES;

Afficher les tables
mysql>SHOW OPEN TABLES;

Voir les pivilèges
mysql>SHOW GRANTS FOR root@localhost;

Afficher la requête qui crée une table
mysql>SHOW CREATE TABLE clients;

La commande "TEE" enregistre tout ce qui est affiché à l'écran (commandes et résultats). Pour arréter la sauvegarde des informations, on utilise la commmande NOTEE (mysql> NOTEE;). Attention: commande sans guillemets!
mysql> TEE C:/Program Files/MySQL/monfichier.txt;

MySQL SAUVEGARDE
Pour réaliser une sauvegarde on exécute une requête qui copie 2 fichiers :
• clients.frm (structure de la table)
• clients.myd (soit mydata: fichiers d'extension)
-> Notez que le fichier correspondant à la table index (clients.myi) n'est pas sauvegardée car il sera restauré à partir des deux autres fichiers.

Requête de sauvegarde
mysql> BACKUP TABLE mabase.clients TO "C:/";

Requête pour récupérer la sauvegarde
mysql> RESTORE TABLE mabase.clients FROM "C:/";



Suivez les aventures des skippers aquitains sur EasyVoile.com
Flux RSS Easy-Micro - Abonnez-vous Easy-Micro [ François Bisch ]
Mercredi 20 mars 2019 - Semaine 12 - Saint Herbert (Demain: Sainte Clémence)
Aujourd'hui, c'est l'anniversaire de Danièle Gilbert (1943-76 ans), animatrice de télévision française et de Marthe Villalonga (1932), actrice française. Autre 20 mars: 1815 : de retour de l'île d'Elbe et après une marche triomphale sur Paris, Napoléon entre dans la capitale. 1965 : France Gall gagne l'Eurovision pour le Luxembourg avec Poupée de cire poupée de son.
Haut de page Easy-Micro