(PECL mongo >= 1.0.0)
Выбрасывается, когда драйвер не может подключиться к базе данных.
Существует ряд возможных сообщений об ошибках, которые помогут вам диагностировать проблему подключения. Это:
No candidate servers found
Ошибка возникает, когда драйвер не может установить соединение с MongoDB (выполняется ReadPreferences, если указано).
No server name given.
Ошибка возникает, если вы передаете "" в качестве наименования сервера, возможно, из-за опечатки с интерполяцией строк, например, "$servr" вместо "$server".
failed to get host [hostname] or port [portnum] from [server].
Ошибка возникает, когда строка сервера была искажена. "[hostname]" и "[portnum]" будет так много, что драйвер не сможет их обработать.
Operation in progress
Ошибка возникает, когда время подключения к базе данных истекло.
Transport endpoint is not connected
Ошибка возникает, когда строка подключения неверна, драйвер не может даже найти сервер базы данных.
couldn't determine master
Ошибка возникает, когда ни один сервер в соединении с набором реплик не был определен как основной.
couldn't get host info for [server]
Ошибка возникает, когда DNS не может разрешить адрес сервера, который вы указали. Это может быть легко вызвано опечаткой, например, "server" вместо "$server".
Invalid Argument
Ошибка возникает, при попытке подключиться к работающей машине, если база данных на самом деле не работает. Убедитесь, что вы запустили сервер базы данных перед подключением.
Permission denied
Ошибка возникает, когда сокет не может быть открыт из-за проблем с разрешениями. В вариантах Red Hat это может быть вызвано настройкой по умолчанию, которая не позволяет Apache создавать сетевые подключения. Вы можете переопределить этот параметр, выполнив:
$ /usr/sbin/setsebool -P httpd_can_network_connect 1
Если сообщение об ошибке не указано выше, это, вероятно, ошибка с сокетом C, которую вы можете поискать в интернете.