mongoDB全量备份和恢复

ops/2025/1/16 4:42:01/

mongoDB全量备份

使用 mongodump 工具:

mongodump 是MongoDB自带的一个命令行工具,它用于导出MongoDB数据库的数据。这个工具可以用来创建一个指定数据库或集合的快照。

mongodump --host <hostname> --port <port> --db <database_name> --out <output_directory>

如果需要备份所有数据库,可以省略 --db 参数。

mongodump --host localhost --port 27017 --out /bakcup/mongo/

使用密码备份

mongodump --host localhost --port 27017 --out /bakcup/mongo/  --username mongo --password 12345

恢复mongoDB数据

恢复MongoDB数据库的过程与备份类似,通常使用 mongorestore 工具来从备份中恢复数据。以下是一些关键步骤和选项,以帮助你成功地恢复数据库

基本命令

mongorestore --host <hostname> --port <port> --username <user> --password <password> --authenticationDatabase admin --dir=<backup_directory>

恢复

mongorestore --host localhost --port 27017 --username mongo --password mongo --authenticationDatabase admin --dir=/opt/2025-01-13/

参数说明

  • --host <hostname>: MongoDB服务器的主机名。
  • --port <port>: MongoDB服务监听的端口,默认是27017。
  • --username <user>--password <password>: 用于认证的用户名和密码。
  • --authenticationDatabase admin: 指定认证数据库,通常是 admin 数据库,不用修改。
  • --dir=<backup_directory>: 包含备份文件的目录路径。

注意事项

  1. 权限:
    确保用于执行 mongorestore 的用户具有足够的权限来写入目标数据库。这通常需要 readWrite 或更高权限的角色。

  2. 覆盖现有数据:
    默认情况下,mongorestore 不会覆盖现有的数据。如果你希望覆盖已有的集合,请使用 --drop 参数。请注意,这将删除现有集合中的所有文档,然后重新插入备份的数据。

    mongorestore --drop ...
    
  3. 选择性恢复:
    如果只需要恢复某个特定的数据库或集合,可以指定它们作为参数:

    • 恢复单个数据库

      mongorestore --db <database_name> ...
      
    • 恢复单个集合:

      mongorestore --nsInclude "<database_name>.<collection_name>" ...
      

http://www.ppmy.cn/ops/150016.html

相关文章

计算机视觉算法实战——吸烟人员检测

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​​​​ ​​​​​​​​​​​​ ​​​​​ 1. 领域介绍✨✨ 计算机视觉是人工智能的一个重要分支&#xff0c;旨在通过算法让计算机…

Go语言开发高效的RPC服务的方法

在Go语言中开发高效的RPC&#xff08;远程过程调用&#xff09;服务&#xff0c;可以通过以下几个关键步骤和方法来实现&#xff1a; 一、定义服务接口 首先需要定义需要提供的RPC方法及其参数和返回值。可以使用Go语言的interface类型来定义RPC接口&#xff0c;同时也可以为…

leetcode(hot100)13-17

解题思路&#xff1a;前缀和 动态规划 主要思路利用前缀和 然后前缀和sum-minsum等于最终的结果 minsum怎么求呢 minsummin&#xff08;minsum&#xff0c;sum&#xff09; 因为sum的前缀和有可能为负值 如果负值的话就取负值如果是正值就取0minsum&#xff1b; class So…

Node.js 环境的管理服务工具

以下是一些与 nodemon 类似的代码热加载管理工具&#xff0c;它们可以自动检测代码文件的变化并重新启动应用程序&#xff1a; Node.js 环境的工具 pm2 全面、功能强大的进程管理器&#xff0c;支持热加载、负载均衡、日志管理等。官网: PM2 - Home forever 一个简单的命令行工…

批量识别图片型PDF指定区域内容识别保存表格+PDF批量改名:技术难题与项目实战总结

相关项目实战&#xff1a; 一、引言 在当今数字化办公环境中&#xff0c;批量处理PDF文件中的表格数据并进行改名是一项常见但具有挑战性的任务。无论是从大量的财务报销凭证、学术研究报告还是项目文档中提取表格信息&#xff0c;都可能遇到各种各样的技术难题。 二、批量提…

【2】WLC的接口有哪些?

1.简介 在传统的网络中,很多时候接口和端口是混用的概念,在这里,我们的接口和端口则需要区分来对待了,WLC上的端口有其自身的含义,而接口区分了很多的种类。 AireOS WLC的接口有AP管理接口(ap manager interface)、动态接口(dynamic interface)、虚拟接口(virtual …

基于单片机的语音控制玩具汽车的设计

语音控制小汽车选用了两个单片机、一个语音识别芯片、两个无线收发模块、一个电机驱动模块、两个电机、一个音频解码模块。语音控制端选用了一个语音识别芯片&#xff0c;实现了将声音信号转换成数字信号&#xff0c;再将数据传输给单片机的功能。小车端选用了单片机来控制电机…

后端技术选型 sa-token校验学习 下 结合项目学习 后端鉴权

目录 后端注册拦截器 实现对 WebMvcConfigurer 接口的类实现 静态变量 方法重写 注册 Spring Framework拦截器 Sa-Token中SaServletFilter拦截器 思考 为什么使用两个拦截器 1. Spring Framework 拦截器 2. SaServletFilter 为什么要注册两个拦截器&#xff1f; 总结 …