如何 运行 db.runCommand( { cleanupOrphaned: "<database>.<collection>" } ) 使用 python

How to run db.runCommand( { cleanupOrphaned: "<database>.<collection>" } ) using python

我创建了一个 python 连接对象 (db_conn),它指向我的副本集的主节点,当我 运行 db_conn( { cleanupOrphaned: database name.collectionname } ) 我收到一条错误消息说 NameError: name 'cleanupOrphaned' is not defined

与所有 pymongo 命令一样,任何未加引号的键都将被视为变量,因此您会收到错误消息。您可以通过以下方式完成任务:

from pymongo import MongoClient

db =  MongoClient()['admin']

db.command({'cleanupOrphaned': 'mydatabase.mycollection'})