mongodb的备份与恢复

查询语句

show dbs

use leshusanguo

show tables

db.user.find()

db.user.find({},{'uid':1,'nickname':1,'max_level':1})

db.user.find({'max_level':1},{'uid':1,'nickname':1,'max_level':1})

db.user.count()

db.user.find({'max_level':1,'uid':672064,},{'uid':1,'nickname':1,'max_level':1})

db.user.remove({'max_level':1,'uid':672064})

db.user.remove({'max_level':1})

一、备份数据库

全库备份

mkdir /root/backup/

mongodump --port 27017 -o /root/backup/

只备份某些库(推荐)

mkdir /root/backup0309/

mongodump --port 27017 -d leshusanguo -o /root/backup0309/

压缩备份(文件夹中会生成.gz结尾的压缩包文件)

mongodump --port 27017 -o /root/backup/ --gzip

mongodump --port 27017 -d leshusanguo -o /root/backup0309/ --gzip

只备份某个库中的某个表为json格式

mongoexport --port 27017 -d leshusanguo -c user -o /root/backup/user.json

带查询条件的导出(设定条件:某库某表中某列值等于1)

mongoexport --port 27017 -d leshusanguo -c user -q '{"max_level":1}' -o /root/backup/user2.json

二、恢复数据库

再恢复数据的时候数据不可以存在,否则会报错无法插入,也可以用--drop 参数强制恢复

mongorestore --port 27017 -d leshusanguo /root/backup0309/ --drop

备份好以后,先删除数据再恢复

实践案例:

show dbs

use leshusanguo

show tables (可省)

db.user.find() (可省)

db.dropDatabase()

show dbs (可省)

mongorestore --port 27017 -d leshusanguo /root/backup0309/ --drop

show dbs

参考原文:

blog.csdn.net/m0_58833554/article/details/132763205

相关推荐
A-刘晨阳3 小时前
AI原生时序数据库选型指南:从数据存储到智能决策的范式跃迁
数据库·时序数据库·ai-native
HalvmånEver4 小时前
MySQL的增删改查命令合集合集
数据库·sql·oracle
不剪发的Tony老师5 小时前
dblab:一款基于终端的交互式数据库客户端
数据库·sql
xwz小王子5 小时前
Science Robotics基础模型正在改写机器人集群的“游戏规则”
数据库·人工智能·机器人
茉莉玫瑰花茶6 小时前
LangGraph 介绍
服务器·网络·数据库
倒霉蛋小马6 小时前
【Redis】利用Redis构造全局唯一ID
数据库
夕除6 小时前
springboot--06
数据库·spring boot·mybatis
2401_833033626 小时前
golang如何实现MQTT主题通配符路由_golang MQTT主题通配符路由实现策略
jvm·数据库·python
运维小子7 小时前
JumpServer Applet 发布自定义远程应用:Oracle SQL Developer 自动登录
数据库·sql·oracle·jumpserver
m0_596749097 小时前
Golang怎么实现方法集与接口的匹配_Golang如何理解值类型和指针类型实现接口的区别【详解】
jvm·数据库·python