Si vous utilisez une version nouvellement installée de PHP 5.3.0, mysqli activé et lorsque vous tentez de vous connecter à la base de données en utilisant mysqli (lorsque vous utilisez ce script de test):
<?php
$mysqli = new mysqli('<ip>', '<user>', '<pass>', '<db>');
if ($mysqli->connect_error) {
die('Connect Error (' . $mysqli->connect_errno . ') '
. $mysqli->connect_error);
}
?>
- <?php
- $mysqli = new mysqli('<ip>', '<user>', '<pass>', '<db>');
-
- if ($mysqli->connect_error) {
- die('Connect Error (' . $mysqli->connect_errno . ') '
- . $mysqli->connect_error);
- }
- ?>
Et si vous obtenez une erreur set comme celui-ci:
Warning: mysqli:: mysqli () [mysqli.mysqli]: OK 6 octets de paquets plus courte que prévue dans <chemin> en ligne < #>
Warning: mysqli:: mysqli () [mysqli.mysqli]: (HY000/2000): mysqlnd Can't connect to MySQL 4. 1 + en utilisant l'authentification vieux <chemin> en ligne < #>
Erreur de connexion (2000) mysqlnd peut pas se connecter à MySQL 4.1 + anciens en utilisant l'authentification
Votre serveur MySQL mai être configuré pour utiliser l'authentification par mot de passe ancien.
Liste de vérification pour résoudre:
- Consultez: http://dev.mysql.com/doc/refman/5.1/en/old-client.html pour les moyens de contourner.
- Avez-vous mieux pour m'assurer que mon client n'est pas en utilisant l'authentification ancien: Exécutez un test de la fonction phpinfo () script sur votre configuration PHP, et la fonction phpinfo () dit que votre client API de mysqlnd est une version 5 +.
- Assurez-vous que la version du serveur MySQL est 5 +
Il est fort probable si toutes les choses d'en haut ont appliqué à votre cas, vérifiez votre serveur MySQL 5 et de voir s'il est configuré avec l'option - old-passwords. Si vous avez limité l'accès à votre serveur, consultez la colonne des mots de passe pour voir si elle est en «court» plutôt qu'au format "long" format. Vérifiez également si les mots de passe ont un «*» en face d'eux, plus récente, MySQL "longs" mots de passe ont ce format.
Hope this helps someone.
There's no place like 127.0.0.1, badass part is now it's ::1