Vérifier et réparer les tables - MySQL
Il arrive, malheureusement, suite à un crash du serveur ou simplement par manque de bol, qu'une ou plusieurs tables cassent. Souvant, on est averti par l'application qui utilise la base. Parfois l'appli indique clairement quelle table est cassée, mais parfois il faut les vérifier toutes soit-même.
Il existe une fonction "check table" et une fonction "repair table" qui peuvent nous sauver la vie. Pour s'en servir, il faut d'abord se connecter à la base, comme dans l'exemple suivant :
$ mysql mysql> use ma_base; mysql> show tables; mysql> check table ma_table_1; mysql> repair table ma_table_1; mysql> check table ma_table_2; mysql> repair table ma_table_2; mysql> quit;
Pour ceux qui savent faire, on peut également faire des SELECT en langage SQL pour récupérer le nom de toutes les tables, et les réparer toutes en une seule commande. Je ne sais pas le faire, mais si quelqu'un veut m'envoyer la solution, je la mettrai volontier en ligne.