私はMongoDBの中に私のデータベースのユーザーを作成しました。私はmongoシェルを使って、ユーザーがデータベースにアクセスするための適切な権限を持っていることを確認しました。 は、今私は、データベースにアクセスするために、私のPythonプログラムを使用したい、と私はPyMongoを使用しています。 mongodを無許可モード(オプション--auth
なし)で実行すると、Pythonクライアントが正常に動作します。しかし、--auth
オプションを使用すると、Pythonクライアントはそれ以上動作しません。実際には、それは私がコードには何も変更していないので、理解しやすいunauthorized error
を、報告します。ここに私のtest
データベースに接続するためのコードは次のとおりです。接続MongoDBの
from pymongo import MongoClient
client = MongoClient()
db = client.test
cursor = db.restaurants.find()
for document in cursor:
print(document)
私の質問は、私が以前に作成したユーザ名/パスワードを使用するPythonコードを変更することができる方法ですか?私はクライアントのドキュメントを見てきましたが、情報はありません。
それだけで動作します:あなたのコードは次のようになります。問題が発生します:多くのおかげでは、パスワードが(「」または「@」のように)予約文字が含まれている場合があることに注意してください – lenhhoxung
。私はこの問題を抱えていたので、[それについての質問](http://stackoverflow.com/questions/39237813/how-to-escape-in-a-password-in-pymongo-connection)を作成しました。 – gmauch