La classe MongoConnectionException

(PECL mongo >= 1.0.0)

Introduction

Émise lorsque le pilote échoue à se connecter à la base de données.

Il y a plusieurs messages d'erreur possibles afin de vous aider à analyser un problème de connexion. Les voici :

  • No candidate servers found

    Lancé lorsque le driver ne peut établir une connexion à MongoDB (rempli les ReadPreferences, si spécifié).

  • No server name given.

    Cette erreur survient si vous passez une chaine vide comme nom de serveur, peut à cause d'une faute dans la variable de connexion, i.e. "$servr" au lieu de "$server".

  • failed to get left host [hostname] or port [portnum] from [server].

    Ceci indique que le premier ou le second serveur, respectivement "server1,server2" dans la chaîne de connexion, est mal formé. "[hostname]" et "[portnum]" doivent correspondre aux éxigences du driver.

  • Operation in progress

    Délai d'attente expiré lors de la connexion à la base de données.

  • Transport endpoint is not connected

    En général cela signifie que la chaine de connexion est incorrecte, le pilote ne trouve pas le serveur de base de données.

  • couldn't determine master

    Aucun serveur du jeu de réplication n'a été identifié comme primaire.

  • couldn't get host info for [server]

    Ceci indique que les DNS n'ont pas réussis à résoudre l'adresse du serveur que vous avez fourni. Vérifier la chaîne fournie.

  • Invalid Argument

    Ceci peut être dû lorsque vous tentez d'accéder à une machine qui fonctionne mais dont la base de données n'est pas en marche. Assurez-vous que la base de données est en fonctionnement avant de tenter de vous y connecter.

  • Permission denied

    Ceci signifie que le socket ne peut être ouvert en raison d'un problème sur les permissions. Sur les systèmes à base de Red Hat, ceci peut être dû à une configuration par défaut qui n'autorise pas Apache à créer des connexions réseaux. Vous pouvez résoudre ce problème en exécutant la commande suivante :

    $ /usr/sbin/setsebool -P httpd_can_network_connect 1
    
    puis, relancez Apache.

Si le message d'erreur que vous recevez n'est pas listé ci-dessus, c'est probablement une erreur qui provient du socket C, et vous pouvez chercher sur le web pour trouver les causes du problème.

Synopsis de la classe

MongoConnectionException extends MongoException {
}
LoadingChargement en cours