Incompatibilité MySQL PHP : compréhension de l'erreur de connexion et de la résolution
Rencontre de l'erreur « Paquet OK 6 octets plus court que prévu » lors de la connexion à un Une base de données MySQL distante avec PHP version 5.3.0 peut être un problème déroutant. Pour résoudre ce problème, il est crucial de comprendre la cause sous-jacente et d'appliquer la solution appropriée.
L'erreur indique une incompatibilité entre la version locale de PHP et le serveur MySQL distant. Les versions PHP 5.3.0 et supérieures exigent que les comptes MySQL aient des mots de passe hachés à l'aide du nouveau plugin d'authentification MySQL. Cependant, les anciennes versions de MySQL comme la 5.0.22 peuvent toujours utiliser l'ancienne méthode d'authentification avec des mots de passe à 16 caractères. Cette divergence conduit à l'erreur car PHP 5.3.0 ne parvient pas à interpréter correctement la réponse du serveur MySQL.
Pour résoudre ce problème, il existe deux solutions possibles :
Pour déterminer si le compte utilise un ancien mot de passe à 16 caractères, exécutez la requête :
SELECT Length(`Password`), Substring(`Password`, 1, 1) FROM `mysql`.`user` WHERE `user`='username'
Sur le serveur problématique 5.0.22, remplacer 'username' par le compte en question. Si le résultat indique une longueur de mot de passe de 16 et que le premier caractère est un chiffre hexadécimal (0-9 ou A-F), cela indique un ancien mot de passe.
En comprenant la cause sous-jacente et en appliquant la solution appropriée, vous pouvez résolvez l'incompatibilité MySQL PHP et établissez une connexion réussie à la base de données distante.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3