python - Pymongo 如何设置 read_preference

标签 python mongodb pymongo

我们如何使 PyMongo 从最近的位置开始读取?该字段 db.read_preference 现在是只读的。

from pymongo import ReplicaSetConnection
from pymongo import ReadPreference

db = ReplicaSetConnection('localhost:27017', replicaSet='rs1')['my_db']
db.read_preference = ReadPreference.NEAREST
db.tag_sets = [{'secondaries': 1}]

最佳答案

您需要将它添加到连接字符串中,如下所示:

db = ReplicaSetConnection('localhost:27017?readPreference=nearest', replicaSet='rs1')['my_db']

或者

db = MongoClient("myhost:27017", read_preference=ReadPreference.NEAREST, replicaSet='rs1')['my_db']

无论出于何种原因,您使用的给定语法失败,它似乎是旧 Pymongo 版本支持的语法。

关于python - Pymongo 如何设置 read_preference,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71787141/

相关文章:

Python Websockets 创建 pem 文件

java - 如何解决 com.mongodb.spark.exceptions.MongoTypeConversionException : Cannot cast. .. Java Spark

java - com.mongodb.DB.authenticate(String,String) 是在内存中进行身份验证还是调用 mongo db?

java - 查询MongoDB文档中的字段值

python - 如何从 pymongo 发出 "show dbs"

python - 无法在 python 中从 MongoDB 序列化 JSON 对象

python - 将数组作为命令行参数传递给 python 脚本

Python:str.split() - 是否可以只指定 "limit"参数?

python - 突然导入错误: cannot import name "QtCore" from "PyQt5"

python - Pymongo:批量更新 $setOnInsert 错误