当前位置: 首页 > article >正文

mongodb 在 Windows 环境下迁移数据库的问题

mongodb 是一款非常优秀的文档数据库,它的社区版本是免费的。但是 mongodb 的迁移和其他传统的关系数据库不太一样,通过官方提供的图形化的客户端工具无法备份和迁移,需要下载命令行工具进行。

首先下载命令行工具:

Download MongoDB Command Line Database Tools | MongoDB

Windows 安装后,使用管理员身份打开 cmd 命令窗口,导航到安装目录的 bin 目录下,如果是默认安装的话,应该是:C:\Program Files\MongoDB\Tools\100\bin

核心的命令有两个,mongodump 和 mongorestore。前者用于备份,后者用于恢复,两者合起来使用,就实现了数据库迁移。

备份一个数据库的命令如下:

mongodump --uri="mongodb://username:password@host:port/database" "d:/dump"

但是一定会抱错,错误信息如下:

auth error: sasl conversation error: unable to authenticate using mechanism "SCRAM-SHA-1": (AuthenticationFailed) Authentication failed.

网上众说纷纭,什么防火墙、安全配置,都不对,是因为如果 mongodb 服务器开启了用户验证,则客户端登录时,一定要指定验证的数据库,而 compass 工具是默认内置指定了验证数据库,所以不需要手动指定,而使用命令行工具时,则必须指定。把上述命令修改为

mongodump --uri="mongodb://username:password@host:port/database" "d:/dump" --authenticationDatabase=admin

命令顺利执行!!

同理,mongorestore 命令也是一样的道理。按照如下命令执行即可:

mongorestore --uri="mongodb://username:password@target_host:target_port/target_database" “d:/dump” --authenticationDatabase=admin


http://www.kler.cn/a/288938.html

相关文章:

  • Scala_【1】概述
  • 前端常用算法集合
  • 活着就好20241225
  • 【C++】模板与泛型编程(一):定义模板,成员模板
  • linux-19 根文件系统(一)
  • uniapp跨平台开发---webview调用app方法
  • Linux:手搓shell
  • 解析淘宝商品详情API返回值中的特殊属性
  • python系列教程231——__init__.py
  • Docker php文件本地包含--pearcmd.php利用
  • Prometheus+Grafana监控数据可视化
  • 反序列化漏洞(一)
  • flume系列之:批量并行启动、停止、重启flume agent组
  • 设计模式之中介者模式
  • Pixelmator Pro for Mac 专业图像处理软件【媲美PS的修图软件】
  • 微信小程序 - 自定义头部导航栏开发
  • 【区块链 + 物联网】车载终端可信分账应用 | FISCO BCOS应用案例
  • 使用docker部署tensorrtllm推理大模型baichuan2-7b
  • 安装包丨WebGIS开发环境搭建及所需工具
  • 2024-MongoDB中国用户大会
  • Pandas 17-行操作和列操作
  • JavaWeb - Vue项目
  • 软考高级网络规划设计师含金量高吗?
  • 数据传输安全——混合加解密(国密)
  • 使用安信可Ai-WB2-12F开启wifi与手机通信TCP-IP(AT指令)
  • 在Spring框架中,如何实现依赖注入?请列举几种注入方式。请解释Spring Boot的自动配置特性,并讨论其如何简化Web应用开发。