2012-05-22 3 views
0

J'ai un serveur de configuration de base de données non distant.Base de données MySQL Connexion SSL en utilisant PHP

Ce que j'essaie de faire, c'est d'établir la connexion en utilisant PHP.

Tous les paramètres du serveur sont OK comme je l'ai testé à l'aide établi MySQL en utilisant les détails suivants: Nom d'hôte: xxx.xx.xx.xxx Port - blanc afin defalut c'est: 3306

Dans l'onglet Avancé dans l'atelier "Utiliser SSL si disponible" est sélectionné. Le test de connexion est réussi. Bien que lorsque j'essaie de me connecter en utilisant mysq_connect ('IP', 'user', 'pass'), j'obtiens les erreurs suivantes: ligne 2: $ c = mysql_connect ('IP', 'USER', ' PASSER');

Warning: mysql_connect() [function.mysql-connect]: fin prématurée de données (mysqlnd_wireprotocol.c: 553) C: \ wamp \ www \ SQL \ index.php on line

Attention: mysql_connect() [function.mysql-connect]: OK paquet 1 octets plus court que prévu> dans C: \ wamp \ www \ sql \ index.php sur la ligne 2

Attention: mysql_connect() [function.mysql -connect]: mysqlnd ne peut pas se connecter à MySQL 4.1+ en utilisant l'ancienne authentification non sécurisée. Veuillez utiliser un outil d'administration pour réinitialiser votre mot de passe à l'aide de la commande SET PASSWORD = PASSWORD ('your_existing_password'). Cela stockera une nouvelle valeur de hachage plus sécurisée dans mysql.user. Si cet utilisateur est utilisé dans d'autres scripts exécutés avec PHP 5.2 ou une version antérieure, vous devrez peut-être supprimer le drapeau old-passwords de votre fichier my.cnf dans C: \ wamp \ www \ sql \ index.php sur la ligne 2

Son été maintenant quand Im essayant d'établir cette connexion. S'il vous plaît aider!

+0

Avez-vous de réinitialiser le mot de passe comme instru cted là au fond? –

+0

Non, je ne l'ai pas fait mais pourquoi se connecter avec MySQL workbench? – Dom

+0

Dom, cette erreur pourrait provoquer même s'il y a une incompatibilité de version b/w votre mysql et PHP. Dans quelle (s) version (s) vous êtes? – Rahul

Répondre

1

essayer ..

mysql_connect('IP','USER','PASS', false, MYSQL_CLIENT_SSL); 
+0

J'ai essayé ça.Maintenant, j'ai l'erreur suivante Attention: mysql_connect() [streams.crypto]: ce flux ne supporte pas SSL/crypto dans C: \ wamp \ www \ sql \ index.php sur la ligne 2 – Dom

+0

Avez-vous l'extension php_openssl et fonctionnement? http://php.net/manual/en/openssl.installation.php –

0

Guide rapide:

  1. Ouvrez my.cnf du serveur (généralement /etc)
  2. Commentaire le old-passwords = 1
  3. Redémarrez MySQL
  4. Run mysql_fix_privilege_tables si nécessaire
  5. Se connecter en utilisant l'utilitaire mysqlclient comme root
  6. use mysql
  7. update user set password=password('new password') where user='the user'

Ensuite, essayez à nouveau

+0

Il n'y a rien dans/etc en dehors de php5/php.ini – Dom

+0

@Dom bien, vérifiez la sortie de 'SELECT PASSWORD ('test');' et assurez-vous que c'est ehh ... long :) sinon, vous devrez chercher le 'my.cnf' –

Questions connexes