Si les tables plantent, cela signifie que quelque chose ne va pas avec mon système.
MySQL said:
#1194 - Table 'tablename' is marked as crashed and should be repaired
Mon site est actuellement en panne à cause de cela.
Je sais comment réparer une table à partir de phpmyadmin, mais est-ce un moyen sûr de réparer?
Quel est le facteur important pour cette question?
Question. Généralement, pourquoi la table se plante-t-elle?
Réponses. Celles-ci peuvent être les raisons -
L'espace disque du serveur était saturé. (Veuillez vérifier l'espace disque sur le serveur live)
Arrêt incorrect du serveur MySQL/Fermeture incorrecte des tables lors de l'utilisation des bases de données.
Plus de charge sur le serveur.
Tout d'abord, les raisons pour lesquelles une table s'est écrasée sont multiples.
Une réparation avec phpmyadmin est fondamentalement la même que la ligne de commande mysqlrepair. Je suggère de tout réparer en ligne de commande:
mysqlrepair -A --auto-repair
mysqlrepair -A -o
Ou commencez un test:
mysqlrepair -A -c
Si vous ne disposez pas des outils de ligne de commande nécessaires et que la raison du crash est probablement MYSQL elle-même, exécutez cette opération à partir de MYSQL pour réparer une table:
REPAIR TABLE db_name.table_name;
Oui, vous pouvez réparer une table à partir de phpmyadmin, cela n'affectera pas vos données et vous pouvez également réparer une table à partir de Shell avec la commande 'myisamchk'.
Utilisation:
mysqlcheck -u root -p --auto-repair --check --all-databases
(Password prompted)
Entrez le mot de passe MySQL pour l'utilisateur root et tout est fait.
J'utilise ceci depuis la ligne de commande:
mysqlcheck -u root -p --auto-repair --check --optimize --all-databases
Si vous avez un accès ssh au serveur, vous pouvez vous connecter puis exécuter:
df -h
et vous pouvez voir quelque chose comme ceci:
Filesystem Size Used Avail Use% Mounted on
/dev/cciss/xxxx 19G 825M 18G 5% /
/dev/cciss/xxxx 9.4G 4.8G 4.2G 54% /usr
/dev/cciss/xxxx 15G 1.8G 12G 13% /var
/dev/cciss/xxxx 19G 18G 0G 0% /opt
/dev/cciss/xxxx 4.7G 243M 4.3G 6% /tmp
/dev/cciss/xxxx 9.4G 1.5G 7.5G 17% /home
C'est LAMP installé sur /opt
, après avoir un peu d'espace disque disponible, vous pouvez exécuter la requête (comme écrit ci-dessus):
Repair table db.mytablecrashed
Et vous entrez dans la dernière rangée:
Table OP Msg_type Msg_text
...
db.mytablecrashed repair status OK