mongoDB 导入导出
MongoDB 数据库工具
MongoDB 提供了一系列数据库工具,包括:
- 二进制导入/导出工具 mongodump、mongorestore 以及 bsondump;
- 数据导入/导出工具 mongoimport 以及 mongoexport;
- 诊断工具 mongostat 以及 mongotop;
- GridFS 工具 mongofiles。
MongoDB 4.4 版本开始,这些数据库工具不再随着服务器一起发布安装,而是使用单独的软件包。
我的mongoDB版本是4.4.19,需要重新自己下载工具
下载
通过下载页面选择相应的版本、平台以及安装文件格式。
我这里选择的是zip,下载成功将文件解压,将 /bin 目录文件复制到 mongoDB 的安装目录下的 /bin 目录下
导出 mongoexport.exe
以管理员身份运行 cmd ,然后通过 DOS 命令进入到存放 mongoexport.exe 的文件目录,执行下列命令
mongoexport.exe --collection=svg --db=SVG --out=svg.json
将 SVG 数据库的 svg 集合 导出到该目录下的 svg.json 文件中
其中,--collection 用于指定要导出的集合,--db 指定了集合所在的数据库,--out 用于指定导出的文件路径和名称。
导入 mongoimport.exe
mongoimport.exe svg.json -d SVG -c svg --drop
导出数据类型 json ,数据库名: SVG,集合名: svg
其中,-d 用于指定目标数据库,-c 用于指定目标集合,--drop 表示如何该集合已经存在则删除后再导入。
详细导入导出命令可到mongodb官方文档查看,我这里只记录我用的命令
mongoimport
导入/导出 添加 host
mongoexport.exe/mongoimport.exe --host="127.0.0.1:27018" --db=SVG --collection=svg --out=svg.json/--file=svg.json
问题:
1、报错
error opening output stream: open svg.json: Access is denied.
解决办法:
用管理员身份运行 cmd ,通过 dos 命令进入 数据库工具存放目录下,再进行导入导出操作
2、dos 命令进入 Program Files 报错
cd Program Files
// 报错
Set-Location : 找不到接受实际参数“Files”的位置形式参数。
所在位置 行:1 字符: 1
+ cd Program Files
+ ~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Set-Location],ParameterBindingException
+ FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
命令应改为下列
cd "Program Files"
cd MongoDB/Server/3.2/bin
mongoexport mongoimport 导入导出 error opening output stream: open svg.json: Access is denied.