Nombre de colonnes de mysql.l'utilisateur est incorrect. Attendu 42 ans, a trouvé 44. La table est probablement endommagé
Actuellement, je suis en utilisant la version la plus récente de ISPConfig 3. Aujourd'hui, je voulais ajouter une base de données et l'utilisateur. Il n'a pas de travail. Ensuite, j'ai essayé sur PHPmyadmin et ça ne fonctionne pas.
Quand j'ai essayé d'ajouter un utilisateur dans PHPMyadmin Utilisateurs du Panneau, j'ai reçu le message d'erreur suivant:
Vous avez une erreur dans votre syntaxe SQL; consultez le manuel
correspond à votre versions du serveur MySQL pour la bonne syntaxe à utiliser
près de ' * 'test'@'localhost" à la ligne 1
La sortie de /var/log/mysql/erreur.journal:
[ERREUR] nombre de Colonnes de mysql.l'utilisateur est incorrect. Attendu 42 ans, a trouvé 44.
La table est probablement corrompu
Version de Mysql: 5.5.55-0+deb8u1
PHPMyadmin Version: 4:4.2.12-2+deb8u2
Debian Linux 8
je suis allé le phpmyadmin, onglet utilisateurs et voulait ajouter de l'utilisateur.
La 2ème erreur indique que la version de la table utilisateur est hors de la synchronisation de la version de votre serveur MySQL. C'est quelque chose que vous avez besoin pour confirmer le plus tôt possible. Bien que, MySQL ne devrait pas avoir même commencé dans de telles circonstances.
comment résoudre ce problème?
Il démarre normalement: /etc/init.d/mysql restart [ ok ] le Redémarrage de mysql (via systemctl): mysql.service.
OriginalL'auteur Ser1ous1 | 2017-05-08
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème lorsque j'ai mis à jour le serveur mysql à partir de 5.5 à 5.7 dans Debian 8 (jessie). Dans de rares cas, il arrivera probablement si vous mettez à jour directement sans passer par les séquences de versions. (Beaucoup de gens n'cet effet, mais ce updrages ne sont pas officiellement pris en charge).
Dans mon cas, il a bien fonctionné quand j'ai exécuté la commande:
J'Espère que cela va vous aider à
après Linux automatiquement mis à jour de mysql à partir de 5,7 8,0 j'ai couru dans des problèmes étranges, c'est l'un d'entre eux. Merci, cette commande fixe leur
vous pourriez avoir besoin de sudo
que résolu pour moi aussi. Mais j'utilise MAMP PRO, donc pour moi la commande est:
/Applications/MAMP/Library/bin/mysql_upgrade -u --force root --password=[mypassword] -h 127.0.0.1
>> pour les lecteurs: swap "[monmotdepasse] " avec le vôtre.OriginalL'auteur Correcter
De la migration de mariadb 10 à mysql 5.6 vu des problèmes similaires. Le message d'erreur que j'ai reçu, était légèrement différent de ce que les autres personnes mentionnées sur cette page... qui, bien sûr, signifie qu'il une autre solution. Lors de la tentative de modifier un enregistrement d'utilisateur, j'ai reçu le message d'erreur suivant:
Certains des conseils ci-dessus a aidé à définir le problème. Après avoir pris un coup d'oeil à un autre serveur (mysql 5.6), j'ai comparé les champs à la fois le "corrompu" de l'utilisateur table (de l'mariadb 10 mysql.table des utilisateurs) & la "fonctionnelle" de l'utilisateur table à l'autre mysql 5.6 de mysql.table des utilisateurs.
J'ai enlevé les trois domaines problématiques à l'aide de la base de données mysql cli & les commandes suivantes:
Problème résolu!
OriginalL'auteur jadik
Dans mon cas, et suivant la recommandation de message d'erreur, j'ai couru:
Que tout résolu.
OriginalL'auteur tokenizer_fsj
Eu le même problème aujourd'hui sur debian (jessie) et un autre ami linux.
En supprimant le mot de passe a expiré colonne d'utilisateur mysql table fixe le problème pour moi.
OriginalL'auteur nfo
est wor pour moi
et ajouter votre mot de passe root
OriginalL'auteur Fadid
Aujourd'hui j'ai rencontré le même problème, après j'ai fait un dist-upgrade d'une Debian Jessie 8 mise en scène de la boîte. Après quelques recherches, j'ai découvert que la table mysql structure diffère de ce que mysql-5.5.55 s'attend à trouver. J'ai juste comparé les corrompus de base de données mysql avec un fraîchement installé et créé un petit fichier de patch, qui devrait corriger l'erreur. Vous ne savez pas si cela fonctionne dans d'autres conditions, trop. Alors, soyez prudent en utilisant ce patch et la sauvegarde de /var/lib/mysql et /etc/mysql avant de faire quelque chose de méchant 😉 je vais prendre aucune responsabilité pour tout type de dommages qui pourraient résulter par ce patch. Utilisez à votre propre risque.
Tout d'abord de FAIRE des SAUVEGARDES!! et encore plus les SAUVEGARDES!! par exemple, vous pourriez donner mysqlsafebackup un essai (Regardez https://github.com/VerboteneZone/MySQLSafeBackup), un chiffrement et de compression de MySQL solution de sauvegarde, écrit par moi.
Télécharger le correctif suivant pour votre boîte:
Assurez-vous qu'aucune instance n'est en train d'accéder à votre serveur MySQL (arrêt des services comme apache2, postfix ou quoi que normalement accède au serveur MySQL). Si vous faites vous-même sûr, que vous êtes seul dans le noir, appliquer le patch et la force d'une base mysql de mise à niveau avec les commandes suivantes:
Si tout a fonctionné sans aucun message d'erreur, redémarrez votre service MySQL:
Après cela, essayez de créer un testuser pour voir si le patch a été appliqué correctement:
Vous devriez obtenir un message comme:
Maintenant, vous pouvez supprimer en toute sécurité de votre testuser de nouveau, avec:
De toute façon, si quelque chose allait mal, restaurer votre sauvegarde et essayez à nouveau 😉
Espère que ça aide.
OriginalL'auteur Olli
J'ai déménagé de
mariadb
àmysql
parce que j'ai été incapable de changer demyriadb
data directory
surcentos 7 x 64
.sur
mysql
Quand j'ai essayé d'ajouter un nouvel utilisateur autre que root. j'ai euj'ai essayé
et
mais toujours eu la même erreur.
donc, je suis allé de l'avant et a ajouté
new user manually
dansmysql.user
table en copiant tous les détails à partir d'autres lignes ayantroot
nom d'utilisateur.et fait.
OriginalL'auteur AMB
Dans mon cas, avec Debian 8 et MySQL 5.5,
mysql_upgrade --force -uroot -p
l'habitude de résoudre le problème.J'avais besoin d'une mise à niveau vers MySQL 5.6 abord, puis exécuter la commande ci-dessus.
http://www.debiantutorials.com/install-mysql-server-5-6-debian-7-8/
OriginalL'auteur xyz
J'ai couru dans la même question aujourd'hui..
La solution pour moi a été d'ajouter manuellement les colonnes manquantes dans la table user.
Attention - Utilisez à vos propres risques
Les nouvelles colonnes avec mysql.5.5.55:
Elles doivent être ajoutées dans un domaine spécifique de l'oder:
Après cela, j'ai pu de nouveau, modifier la table utilisateur.
OriginalL'auteur Dom
Lors de la migration de mysql 5.5 à 5.7, (à l'aide d'un plein mysqldump et puis la source de commande), j'ai eu l'erreur que lorsque j'ai essayé de modifier ou d'ajouter un utilisateur
Similaire à d'autres ici, je n'ai
Et qui a résolu le problème, je pourrais ajouter et de modifier des utilisateurs à nouveau. J'aurais ajouté cette petite différence comme un commentaire à l'une des réponses semblables, mais je n'ai pas la réputation encore
OriginalL'auteur texdevelopers
Calme le même message d'erreur : nombre de Colonnes de mysql.l'utilisateur est incorrect. Attendu 42, trouvé 43. La table est probablement endommagé.
Ce n'est pas la solution, mais une neutralisation ... je sauvegardés toutes mes bases de données de mysql 5.5.55-0+deb8u1 et restaurés à mysql 5.7.18-0ubuntu0.16.04.1 jusqu'à ce que ce bug n'est pas résolu.
Travail difficile à mettre à jour tous les liens utiles.
OriginalL'auteur fdav
Après et de mise à niveau, j'ai eu de la Colonne "nombre de mysql.l'utilisateur est incorrect. Attendu 45, trouvé 46. La table est probablement corrompu" j'ai eu des problèmes de connexion donc j'ai tiré sur la base de données:
connecté et il y avait une colonne supplémentaire par rapport à ma table par défaut "Is_role" donc je l'ai enlevé:
redémarré mysqld et nous sommes tous bons.
OriginalL'auteur Soth
J'ai enfin résolu mon problème de cette façon:
1) Démarrer mysql:
mysqld –-console –-skip-grant-tables –-skip-external-locking
(garder le terminal ouvert)2) Exécution:
mysqlcheck –-repair mysql user
Source: https://forums.mysql.com/read.php?10,652134,652135#msg-652135
OriginalL'auteur nikoskip