问题描述
我有一个来自 mongodb 云的 mongodump。它在我的电脑本地可用。现在我想创建一个新的 mongdb 数据库。并使用查询在本地访问文件。为此我使用了 pymongo。这是我的代码:
import pymongo
client = pymongo.MongoClient('mongodb://localhost:27017')
database = client['db_name']
mongorestore -d db_name adress_of_mongodump
//mongorestore -d database C:\Users\Lenovo\Documents\home\ubuntu\dump2020
但我无法访问 mongodump。而是在 mongorestore 上出现语法错误
解决方法
pymongo 不包含 mongorestore 功能。如果你想从 python 运行它,你必须将 mongorestore 安装到机器上,并使用 subprocess.run()
命令执行它;类似:
import subprocess
address_of_mongodump = 'c:/address_of_mongodump'
command = ['mongorestore','--uri','mongodb://localhost:27017',f'--archive={address_of_mongodump}']
subprocess.run(command,capture_output=True)