Aller au contenu Aller au menu
Vous êtes ici : Développement > MySQL > 5) Le serveur MySQL – maintenance et backup > c) Maintenance des tables
Langue : fr

c) Maintenance des tables

Les actions d'insertion et délétion répétées sur une base de données induisent de la fragmentation de données (exactement comme la fragmentation d'un disque dur). Pour y remédier, il faut réaliser à intervalles réguliers des opérations de vérification et de correction des données. MySQL fournit deux utilitaires pour cela, myisamchk, qui nécessite que le serveur mysqld soit arrêté (donc pas très pratique dans le cadre d'une opération de maintenance régulière), et mysqlcheck qui travaille sur un serveur live.

Les principales opérations de maintenance de MySQL peuvent être réalisées avec mysqlcheck :
mysqlcheck --check --all-databases
mysqlcheck --repair --all-databases
mysqlcheck --optimize --all-databases

Il ne reste plus qu'à intégrer ces commandes dans un script batch, et appeler ce dernier nuitamment pour prévenir tout problème de corruption de données.

  1. MySQL
    1. 1) Bien concevoir la base de données
      1. a) Choix des tables – Normalisation des données
      2. b) Choix et typage des champs
    2. 2) Indexer les données
      1. a) L'index : un marque-page dans la base de données
      2. b) Une forte cardinalité pour un bon index
      3. c) Une utilisation récurrente pour un bon index
      4. d) Gare aux contre-optimisations
    3. 3) Optimiser les requêtes SQL
      1. a) Utiliser la richesse du langage SQL
      2. b) Optimiser les jointures
      3. c) Mettre à profit une bonne indexation
    4. 4) Corriger les requêtes lentes
      1. a) L'optimisation de requête par EXPLAIN
      2. b) L'analyse post-mortem
    5. 5) Le serveur MySQL – maintenance et backup
      1. a) Minimiser l'impact des opérations de maintenance
      2. b) Sauvegarde et restauration des bases de données
      3. c) Maintenance des tables