Pymongo一直无法登录MongoDB。我输入了“ root”帐户的正确密码。
Traceback (most recent call last):
File "index.py", line 3, in <module>
from apis import app
File "/home/app/apis/__init__.py", line 16, in <module>
import apis.call
File "/home/app/apis/call.py", line 12, in <module>
import auth
File "/home/app/apis/auth.py", line 18, in <module>
connection.api.authenticate(database.ADMIN_ID,database.ADMIN_PASSWD)
File "/usr/lib64/python2.6/site-packages/pymongo/database.py", line 875, in authenticate
self.connection._cache_credentials(self.name, credentials)
File "/usr/lib64/python2.6/site-packages/pymongo/mongo_client.py", line 456, in _cache_credentials
auth.authenticate(credentials, sock_info, self.__simple_command)
File "/usr/lib64/python2.6/site-packages/pymongo/auth.py", line 243, in authenticate
auth_func(credentials[1:], sock_info, cmd_func)
File "/usr/lib64/python2.6/site-packages/pymongo/auth.py", line 222, in _authenticate_mongo_cr
cmd_func(sock_info, source, query)
File "/usr/lib64/python2.6/site-packages/pymongo/mongo_client.py", line 687, in __simple_command
helpers._check_command_response(response, None, msg)
File "/usr/lib64/python2.6/site-packages/pymongo/helpers.py", line 178, in _check_command_response
raise OperationFailure(msg % errmsg, code, response)
pymongo.errors.OperationFailure: command SON([('authenticate', 1), ('user', u'root'), ('nonce', u'9e44852e6597a1de'), ('key', u'f132369d21874c9858409e235abff25f')]) failed: auth failed
这是pymongo
import pymongo
connection = pymongo.MongoClient("127.0.0.1")
connection.api.authenticate("root","1234")
db = connection.api
pymongo会在密码上使用md5吗?看来mongodb数据中有一些不同的密码。
这是mongodb admin system.users数据
{“ user”:“ root”,“ pwd”:“ cde0d84e6749c235a3b4e36d945eb6fe”,“ roles”:[“ userAdminAnyDatabase”]}
看到什么地方了吗?
我试图连接名为api的表。
connection.api.authenticate("root","1234")
api表中没有管理员帐户。我确实放入了system.admin表。因此,我在api表中创建了一个新的管理员帐户,它可以正常工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句