“Lost connection to MySQL server” lorsque vous tentez de vous connecter à un serveur MySQL distant
Je suis en utilisant le Zend Framework pour développer mon application et j'essaie de me connecter à une base de données MySQL distante dans mon LAN.
La base de données des paramètres de connexion dans Zend est comme suit:
[GÉNÉRAL] db.adaptateur = PDO_MYSQL db.params.host = 192.168.1.2 db.params.port = 3306
[LIVE:GÉNÉRAL] db.params.nom d'utilisateur = root db.params.mot de passe = ** db.params.dbname = djudd
[DE DÉVELOPPEMENT:GÉNÉRAL] db.params.nom d'utilisateur = root db.params.mot de passe = ** db.params.dbname = stellarengine
J'ai eu l'erreur suivante:
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2013] Lost connection to MySQL server at 'reading initial communication packet', system error: 111' in /usr/share/php/Zend/Db/Adapter/Pdo/Abstract.php:129 Stack trace: #0 /usr/share/php/Zend/Db/Adapter/Pdo/Abstract.php(129): PDO->__construct('mysql:host=192....', 'root', 'password', Array) #1 /usr/share/php/Zend/Db/Adapter/Pdo/Mysql.php(96): Zend_Db_Adapter_Pdo_Abstract->_connect() #2 /usr/share/php/Zend/Db/Adapter/Abstract.php(448): Zend_Db_Adapter_Pdo_Mysql->_connect() #3 /usr/share/php/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('DESCRIBE
bny_c...', Array) #4 /usr/share/php/Zend/Db/Adapter/Pdo/Mysql.php(156): Zend_Db_Adapter_Pdo_Abstract->query ("DÉCRIREbny_c...') #5 /usr/share/php/Zend/Db/Table/Abstract.php(823): Zend_Db_Adapter_Pdo_Mysql->describeTable('bny_core_module...', NULL) #6 /usr/share/php/Zend/Db/Table/Abstract.php(866): Zend_Db_Table_Abstract->_setupMetadata() #7 /usr/share/php/Zend/Db/Table/Abstract. in /usr/share/php/Zend/Db/Adapter/Pdo/Abstract.php on line 144
Merci de m'aider à résoudre ce problème.
root
que vos identifiants de base de données... Qui pourrait être très dangereux si il y a un type d'attaque (système de fichiers ou par injection sql)...essayez d'utiliser l'IP de l'hôte distant (ou le Nom) au lieu de la locale par défaut de la passerelle IP 192.168.1.2
Peut-être que ce n'est pas en rapport avec le zend framework, vous avez besoin de tester juste avec une simple fonction de mysql_connect (). Probablement l'erreur est de votre serveur mysql ou de la configuration du réseau.
OriginalL'auteur Karthikeyan | 2010-12-21
Vous devez vous connecter pour publier un commentaire.
Dernière fois que j'ai eu ce type d'erreur, j'ai dû changer mon hôte à partir de: 127.0.0.1 'localhost " et puis il a bien fonctionné.
OriginalL'auteur pdolinaj
Ce qui pourrait aider: MySQL Forum: "la lecture initiale de la communication de paquets', erreur système: 111
OriginalL'auteur Srisa
J'ai eu le même problème, pour le résoudre j'ai changé le port distant dans le tunnel de configuration de
'localhost:3306' to '127.0.0.1:3306'.
Dans la machine cible, localhost résolution: 1 mais MariaDB n'a pas été à l'écoute de l'IPv6 demandes...
OriginalL'auteur Flávio Botelho
Cette erreur signifie que vous êtes connecté à un autre serveur ou le pare-feu a bloqué ou le serveur n'est pas en cours d'exécution.
Vous aurez besoin de contacter l'administrateur du serveur pour confirmer les détails corrects.
Avec la plupart des serveurs que vous allez utiliser
127.0.0.1
mais certains l'utilisentlocalhost
tandis que d'autres (comme media temple) aurez besoin d'un nom de domaine - par exempleinternal-db.s421234.gridserver.com
OriginalL'auteur Abhi Beckert