我正在使用通过mLab托管的MongoDB数据库,通过mongoengine连接,在Elastic Beanstalk(Flask(应用程序上。
我像这样连接:
mongoengine.connect(db='my-database', host ='mongodb:/user:password@xxx.mlab.com')
但是,当 Elastic Beanstalk 第一次自动扩展我的应用程序时,我开始收到以下错误消息:
OperationFailure: Another user is already authenticated to this database.
You must logout first.
我认为发生这种情况是因为同一用户在应用程序自动缩放时多次尝试对同一数据库进行身份验证?如果是这样的话,解决方案是什么?是否有其他方法可以连接到数据库?
我不知道为什么会这样,但我发现在mongoengine
的引擎盖下从pymongo==3.7.0
降级到pymongo==3.6.1
为我解决了这个问题