OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...
          OPTIMIZE TABLE doit être utilisée si une
          grande partie de la base a été effacée, ou si vous avez
          fait de nombreuses modifications dans une table à format de
          ligne dynamique (des tables qui ont des colonnes de type
          VARCHAR, BLOB et
          TEXT). Les lignes effacées sont
          conservées dans une liste, et les prochaines opérations
          d'INSERT réutilisent les vieilles
          positions de lignes. Vous pouvez vous servir de la commande
          OPTIMIZE TABLE pour récupérer l'espace
          utilisé et défragmenter le fichier de données.
        
          Dans la plupart des installations, vous n'avez pas à utiliser
          OPTIMIZE TABLE. Même si vous faites
          beaucoup de mises à jour sur des colonnes à taille
          dynamique, il n'est pas évident que vous ayez à passer cette
          commande plus d'une fois par semaine ou par mois, et
          uniquement sur quelques tables.
        
          Pour le moment, OPTIMIZE TABLE fonctionne
          uniquement avec les tables de type MyISAM
          et BDB. Pour les tables
          BDB, OPTIMIZE TABLE est
          actuellement l'équivalent de ANALYZE
          TABLE. See Section 13.5.2.1, « Syntaxe de ANALYZE TABLE ».
        
          Vous pouvez vous arranger pour que OPTIMIZE
          TABLE fonctionne sur d'autres types de tables, en
          démarrant mysqld avec
          --skip-new ou --safe-mode,
          mais dans ce cas, OPTIMIZE TABLE est
          simplement l'équivalent de ALTER TABLE.
        
          OPTIMIZE TABLE fonctionne comme ceci :
        
Si la table contient des lignes effacées ou des lignes fragmentées, la table est compactée.
              Si les pages d'index ne sont pas triées,
              OPTIMIZE TABLE les trie.
            
Si les statistiques ne sont pas à jour (et que la table n'a pas pu effectuer de réparation en triant l'index), elles sont mises à jour.
          Notez que la table est verrouillée durant la commande
          OPTIMIZE TABLE.
        
          Avant MySQL 4.1.1, OPTIMIZE n'était pas
          reportée dans le log binaire. Depuis MySQL 4.1.1 elles le
          sont, à moins que l'attribut optionnel
          NO_WRITE_TO_BINLOG ou son alias
          LOCAL ne soit utilisé.
        
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

