我想通过命令导出MongoDB中的所有集合:
mongoexport -d dbname -o Mongo.json
结果是: 没有指定集合!
手册说,如果你不指定一个集合,所有的集合都将被导出。 然而,为什么这行不通呢?
http://docs.mongodb.org/manual/reference/mongoexport/#cmdoption-mongoexport--collection
我的MongoDB版本是2.0.6。
我想通过命令导出MongoDB中的所有集合:
mongoexport -d dbname -o Mongo.json
结果是: 没有指定集合!
手册说,如果你不指定一个集合,所有的集合都将被导出。 然而,为什么这行不通呢?
http://docs.mongodb.org/manual/reference/mongoexport/#cmdoption-mongoexport--collection
我的MongoDB版本是2.0.6。
当前回答
可以使用mongodb命令进行修改
步骤1:打开命令提示符 第二步:打开mongoDB安装的bin文件夹(C:\Program Files\ mongoDB \Server\4.0\bin) 步骤3:然后执行以下命令 mongodb -d your_db_name -o destination_path Your_db_name = test destination_path = C:\Users\HP\Desktop
导出的文件将创建在destination_path\your_db_name文件夹中(在本例中是C:\Users\HP\Desktop\test)
参考资料:o7planning
其他回答
请让我们知道您在哪里安装了Mongo DB?(Ubuntu或Windows)
Windows:
在导出之前,您必须在cmd提示符中连接到您的Mongo DB,并确保您能够连接到您的本地主机。 现在打开一个新的cmd提示符并执行以下命令, mongodb——db数据库名——out保存路径 例如:mongodb——db mydb——out c:\TEMP\op.json 详情请访问https://www.youtube.com/watch?v=hOCp3Jv6yKo。
Ubuntu的:
登录到安装Mongo DB的终端,确保能够连接到Mongo DB。 现在打开一个新终端,执行下面的命令, mongodb -d数据库名称-o要保存的文件名 例如:mongodb -d mydb -o output.json 详情请访问https://www.youtube.com/watch?v=5Fwd2ZB86gg。
如果你想备份服务器上的所有dbs,而不用担心调用dbs,使用下面的shell脚本:
#!/bin/sh
md=`which mongodump`
pidof=`which pidof`
mdi=`$pidof mongod`
dir='/var/backup/mongo'
if [ ! -z "$mdi" ]
then
if [ ! -d "$dir" ]
then
mkdir -p $dir
fi
$md --out $dir >/dev/null 2>&1
fi
这将使用mongodb实用程序,如果没有指定,该实用程序将备份所有db。
你可以把它放在你的cronjob中,它只会在mongod进程正在运行时运行。如果不存在备份目录,它还将创建备份目录。
每个DB备份都被写入一个单独的目录,因此您可以从全局转储恢复各个DB。
这是实现目标最简单的方法。
mongodb -d db_name -o path/filename.json
可以使用mongodb命令进行修改
步骤1:打开命令提示符 第二步:打开mongoDB安装的bin文件夹(C:\Program Files\ mongoDB \Server\4.0\bin) 步骤3:然后执行以下命令 mongodb -d your_db_name -o destination_path Your_db_name = test destination_path = C:\Users\HP\Desktop
导出的文件将创建在destination_path\your_db_name文件夹中(在本例中是C:\Users\HP\Desktop\test)
参考资料:o7planning
以下是恢复导出数据库时对我有效的方法:
Mongorestore -d 0 ./0——drop
其中。/包含导出的bson文件。注意——drop将覆盖现有数据。