MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Conexão remota do MongoDB com php


Para ser capaz de depurar "estranhezas aleatórias" como esta, é muito útil ativar o log interno do driver. O driver faz muitas coisas nos bastidores e pode cuspir todo tipo de informação importante de depuração.

Adicione o seguinte na parte superior do seu script:
<?php
MongoLog::setLevel(MongoLog::ALL);
MongoLog::setModule(MongoLog::ALL);
?>

Por padrão, o logger emitirá "mensagens de erro do php" (E_NOTICE/E_WARNING), se você tiver o error_log ativado, certifique-se de verificar esse arquivo para obter os resultados.

Para sua string de conexão (ligeiramente modificada), recebo os seguintes resultados
Notice: PARSE   INFO: Parsing mongodb://theAdmin:[email protected]:27027 in Command line code on line 1
Notice: PARSE   INFO: - Found user 'theAdmin' and a password in Command line code on line 1
Notice: PARSE   INFO: - Found node: localhost:27027 in Command line code on line 1
Notice: PARSE   INFO: - Connection type: STANDALONE in Command line code on line 1
Notice: PARSE   INFO: - No database name found for an authenticated connection. Using 'admin' as default database in Command line code on line 1
Notice: CON     INFO: mongo_get_read_write_connection: finding a STANDALONE connection in Command line code on line 1
Notice: CON     INFO: connection_create: creating new connection for localhost:27027 in Command line code on line 1
Notice: CON     WARN: connection_create: error while creating connection for localhost:27027: Invalid argument in Command line code on line 1
Notice: CON     WARN: Couldn't connect to 'localhost:27027': Invalid argument in Command line code on line 1

Suspeito de um problema de firewall em ambas as extremidades. Você pode se conectar ao servidor usando o shell mongo?