| 15.1 Le moteur de tables MyISAM
 15 Types de tables MySQL
 Manuel de Référence MySQL 4.1 : Version Française
 
 ->Options de démarrage MyISAM
 . Espace requis pour les clefs
 . Formats de table MyISAM
 . Problèmes avec les tables MyISAM
 
 
 | 
  15.1.1 Options de démarrage MyISAM Les options suivantes de  
mysqld
  permettent de modifier le comportement 
des tables  
MyISAM
  : 
 
Options de ligne de commande 
mysqld
 .Les variables systèmes suivantes affectent le comportement des tables
 
MyISAM
  :
--myisam-recover=mode
      
Active le mode de restauration automatique des tables  
MyISAM
  corrompues.
      
--delay-key-write=ALL
      
N'écrit pas les buffers de clés entre deux écritures dans une table  
MyISAM
 .
 
Note :
  Si vous faîtes cela, vous ne devez pas utiliser 
les tables  
MyISAM
  avec d'autres programmes (comme depuis un autre
serveur MySQL ou avec  
myisamchk
 ) lorsque la table est utilisée.
Sinon, vous allez obtenir une corruption d'index.
Utiliser  
--external-locking
  n'aidera pas les tables qui utilisent 
 
--delay-key-write
 . 
Variables sytème du serveur .La restauration automatique est activée si vous lancez
 
mysqld
  avec l'option  
--myisam-recover
 . Dans ce cas, 
lorsque le serveur ouvre la table  
MyISAM
 , il vérifie si la table
a été marquée comme crashée ou si le compteur de tables ouvertes n'est
pas zéro ou si le serveur utilise  
--skip-external-locking
 .  Si une
des conditions précédente est vraie, il arrive ceci :
bulk_insert_buffer_size
      
La taille du cache d'index lors des insertions de masse.
 
Note :
  c'est une limite par  
par thread
 !
      
myisam_max_extra_sort_file_size
      
Utilisée pour aider MySQL à décider quand utiliser le cache de clé lent mais
sûr.  
Note :
  ce paramètre était donné en megaoctets avant MySQL 4.0.3, 
et en octets depuis 4.0.3.
      
myisam_max_sort_file_size
      
N'utilise pas la méthode de tri rapide pour créer un index, si un
fichier temporaire dépasserait cette taille.  
Note :
  
ce paramètre était donné en megaoctets avant MySQL 4.0.3, 
et en octets depuis 4.0.3.
      
myisam_sort_buffer_size
      
La taille du buffer lors de la restauration de table.
      
Si la restauration n'est toujours pas capable de retrouver toutes les lignes,
et que vous n'avez pas spécifié l'option  
FORCE
  dans la valeur de
l'option  
--myisam-recover
 , la réparation automatique s'annule, avec le message
d'erreur suivant :
La table est analysée pour rechercher des erreurs.
Si le serveur trouve une erreur, il essaie de faire une réparation rapide
(avec le tri, sans recréer de données).
Si la réparation échoue à cause d'une erreur dans le fichier de données
(par exemple, une erreur de clé), le serveur essaie à nouveau, en re-créant
le fichier de données.
Si la réparation échoue encore, le serveur essaie encore avec une ancienne
méthode réparation (écrire les lignes les unes après les autres, sans tri). Cette
méthode devrait être capable de réparer tout les types d'erreurs, et elle
occupe peu de place sur le disque. Si vous spécifiez la valeur  
FORCE
 , une alerte comme celle-ci sera écrite
dans les logs :| 
Error: Couldn't repair table: test.g00pages
 | 
 Notez que si la valeur de restauration automatique inclut  
BACKUP
 ,
le processus de restauration créera des fichiers avec des noms de la forme
 
tbl_name-datetime.BAK
 .  Vous devriez avoir une tâche régulière avec 
 
cron
  pour supprimer automatiquement ces fichiers dans les 
bases de données pour nettoyer le volume.| 
Warning: Found 344 of 354 rows when repairing ./test/g00pages
 | 
 |