MONGO 遠程連接服務器,出現:
PHP Fatal error: Uncaught exception 'MongoConnectionException' with message 'Failed to connect to: 63.141.xx.xxx:27017: Authentication failed on database 'admin' with username 'xxx': auth fails' in /var/www/data/update_data.php:25 Stack trace:#0 /var/www/data/update_data.php(25): Mongo->__construct('mongodb://seole...') #1 {main}
Authentication failed on database 'admin' with username
我明明連接的是XXX數據集合。 不是admin數據庫。為毛出現連接Admin失敗。
GOOGLE,原來是有些版本的mongo 搭配 linux后,如果不指定連接數據集,默認連接的是admin數據集,所以在連接字符串中就得指明要連接數據集。
代碼由
$mongo_server = "mongodb://username:passwd@63.141.xx.xxx:27017"; $m_f = new Mongo($mongo_server); // $db_f = $m_f->eTao; $collection_f = $db_f->etao_data; 改為 $mongo_server = "mongodb://username:passwd@63.141.xx.xxx:27017/eTao"; $m_f = new Mongo($mongo_server); // $db_f = $m_f->eTao; $collection_f = $db_f->etao_data;