Maison  >  Article  >  base de données  >  Pourquoi ma table MySQL est-elle en lecture seule et comment puis-je y remédier ?

Pourquoi ma table MySQL est-elle en lecture seule et comment puis-je y remédier ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-31 13:22:02196parcourir

Why is My MySQL Table Read-Only and How Can I Fix It?

Erreur 1036 : la table est une solution en lecture seule

Lors de la tentative d'exécution de requêtes de mise à jour sur une table et de la rencontre du message "1036 - Table les données sont en lecture seule", il est évident que la table est dans un état restreint. Pour résoudre ce problème, suivez les étapes décrites ci-dessous :

1. Examinez la configuration MySQL :

Vérifiez le fichier de configuration MySQL (/etc/my.cnf ou /etc/mysql/my.cnf) pour le paramètre suivant :

innodb_force_recovery

Si ce paramètre est mis à 1, il force la base de données à fonctionner en mode lecture seule. Commentez ou supprimez ce paramètre pour activer les opérations d'écriture.

2. Vérifiez les attributs de la table :

Assurez-vous que les autorisations de fichier de la table sur le système de fichiers du serveur ne sont pas en lecture seule. Les attributs de la table doivent être définis sur 777 (autorisations complètes) pour l'utilisateur et le groupe propriétaire des fichiers.

3. Optimiser et réparer la table :

Essayez d'utiliser la commande OPTIMIZE TABLE pour récupérer l'espace inutilisé et améliorer les performances. De plus, exécutez la commande REPAIR TABLE pour vérifier les erreurs et réparer les incohérences.

4. Vérifiez les paramètres de récupération InnoDB :

Dans les cas où les étapes précédentes ne résolvent pas le problème, vérifiez le paramètre de récupération InnoDB dans la base de données MySQL. Exécutez la requête suivante :

SHOW INNODB STATUS\G

Recherchez la ligne qui commence par innodb_use_sys_read_only_table. Si cette valeur est définie sur 1, cela indique que la table est forcée en mode lecture seule. Réglez-le sur 0 pour désactiver cette restriction.

5. Redémarrez MySQL :

Après avoir effectué les modifications nécessaires, redémarrez le service MySQL pour que les mises à jour prennent effet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn