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

相关推荐
DolphinDB36 分钟前
集成 Prometheus 与 DolphinDB 规则引擎,构建敏捷监控解决方案
数据库
IvorySQL1 小时前
PostgreSQL 技术日报 (3月10日)|IIoT 性能瓶颈与内核优化新讨论
数据库·postgresql·开源
DBA小马哥4 小时前
时序数据库是什么?能源行业国产化替换的入门必看
数据库·时序数据库
爱可生开源社区7 小时前
某马来西亚游戏公司如何从 SQL Server 迁移至 OceanBase?
数据库
小瓦码J码9 小时前
PostgreSQL表名超长踩坑记
数据库·postgresql
yhyyht9 小时前
InfluxDB入门记录(三)flux-dsl
数据库·后端
IvorySQL1 天前
PostgreSQL 技术日报 (3月9日)|EXPLAIN ANALYZE 计时优化与复制语法讨论
数据库·postgresql·开源
stark张宇1 天前
MySQL 核心内幕:从索引原理、字段选型到日志机制与外键约束,一篇打通数据库任督二脉
数据库·mysql·架构
倔强的石头_1 天前
融合数据库架构实践:关系型、JSON与全文检索的“一库多能”深度解析
数据库
星辰员1 天前
KingbaseES数据库:ksql 命令行用户与权限全攻略,从创建到删除
数据库