MongoDB的配置、备份与恢复以及备份脚本加密

MongoDB有哪些数据脱敏技术? 为什么需要知道掩盖技术?因为这是一种匿名化数据的方法,这样就可以使用包含敏感或个人信息的数据进行测试或开发。即使你负责的数据库具有完全的访问控制和安全性,你也可能需要多种数据脱敏技术来支持应用程序。 例如,你可能需要动态脱敏数据以确保应用程序不会暴露不必要的敏感信息。或者,如果您需要对实际生产数据运行测试或开发,而实际生产数据包含个人或敏感信息,则可能需要脱敏真实数据。 如果你需要将生产数据推到一个安全性较低的环境,你也需要进行数据脱敏技术,为了分发报告或者分析相应的数据,并且必须保留报告所需要的基础. 阅读详情

shc脚本加密

shell脚本是可读写的,很有可能会泄露敏感信息,如用户名,密码,路径,IP等.Shc可以用来对shell脚本进行加密,可以将shell脚本转换为一个可执行的二进制文件。经过shc对shell脚本进行加密后,会同时生成两种个新的文件,一个是加密后的可执行的二进制文件(文件名以.x结束),另一个是C语言的原文件(文件名以.x.c结束;

  • ubuntu 安装
sudo apt-get install shc
  • 使用方法(注意:要有-r选项, -f 后跟要加密的脚本名.):
  • 相同在操作系统,shc后的可执行二进制文件直接可以移植运行,但不同操作系统可能会出现问题
  • 运行后会生成两个文件,script-name.x 和 script-name.x.c
    script-name.x是加密后的可执行的二进制文件.
    ./script-name.x 即可运行.
    script-name.x.c是生成script-name.x的原文件(c语言)
shc -r -f script-name 

说明

在使用MongoDB的过程中遇到了许多的问题,稍微操作不慎就会导致数据库异常,首先我们应该做好数据的定时备份以防万一

  • 开启mongo db后台服务
  • 关闭mongo db服务
  • 备份恢复
  • 无法连接

开启mongo db后台服务

  • 使用–fork参数启动,这样就是后台启动

     mongod --fork --logpath <log_file_path> --dbpath <db_folder_path>
    --fork 将mongod作为后台服务启动,并必须要跟随 --logpath 指定日志文件路径,如果该日志文件不存在会被自动创建
    --dbpath 数据的存储目录
  • 建议先设置好配置文件/etc/mongod.conf后,每次手动用命令启动,在里面修改好自己想要的data和log文件的存放路径

    mongod –f /etc/mongod.conf //后台启动可以加上 --fork
  • 或者加入开机自启动,加入开机自启动脚本里面

    /etc/init.d //在这里面添加启动脚本后修改文件的权限
  • 关于/etc/mongod.conf中常用的选项介绍:

    --dbpath: 指定数据目录,必选,不配置会启动报错;
    
    --port: 指定服务监听的端口,默认为27017
    
    --logpath:指定日志路径;
    
    --logappend:指定日志是追加模式,或者每次重启MongoDB后清理日志;默认是追加模式;
    
    --fork:用此选项创建子进程,在后台运行MongoDB;此选项必先开启logpath选项;
    
    --bind_ip: 指定监听的接口;默认是127.0.0.1;
    
    --httpinterface: 设定是否在1000的端口启动一个微型的HTTP服务器;默认不开启;
    
    --nounixsocket: 设置是否使用UNIX socket;
    
    --noscripting: 设置是否完全禁止服务器端JavaScript脚本的运行;
  • mongod.conf配置说明

    
    //日志文件位置
    logpath=/data/db/journal/mongodb.log  (这些都是可以自定义修改的)
    
    // 以追加方式写入日志
    logappend=true
    
    //是否以守护进程方式运行
    fork = true
    
     //默认27017
    port = 27017
    
     //数据库文件位置
    dbpath=/data/db
    
     //启用定期记录CPU利用率和 I/O 等待
    cpu = true
    
     //是否以安全认证方式运行,默认是不认证的非安全方式
    noauth = true
    auth = true
    
     //详细记录输出
    verbose = true
    
     //用于开发驱动程序时验证客户端请求
     Inspect all client data for validity on receipt (useful for
     developing drivers)
    objcheck = true
    
     Enable db quota management
    // 启用数据库配额管理
    quota = true
    // 设置oplog记录等级
     Set oplogging level where n is
       0=off (default)
       1=W
       2=R
       3=both
       7=W+some reads
    diaglog=0
    
     Diagnostic/debugging option 动态调试项
    nocursors = true
    
    // Ignore query hints 忽略查询提示
    nohints = true
    // 禁用http界面,默认为localhost:28017
    nohttpinterface = true
    
    // 关闭服务器端脚本,这将极大的限制功能
     Turns off server-side scripting.  This will result in greatly limited
     functionality
    noscripting = true
    // 关闭扫描表,任何查询将会是扫描失败
     Turns off table scans.  Any query that would do a table scan fails.
    notablescan = true
    // 关闭数据文件预分配
     Disable data file preallocation.
    noprealloc = true
    // 为新数据库指定.ns文件的大小,单位:MB
     Specify .ns file size for new databases.
     nssize =
    
    // Replication Options 复制选项
     in replicated mongo databases, specify the replica set name here
    replSet=setname
     maximum size in megabytes for replication operation log
    oplogSize=1024
     path to a key file storing authentication info for connections
     between replica set members
    //指定存储身份验证信息的密钥文件的路径
    keyFile=/path/to/keyfile

关闭mongo db后台服务

使用shutdownServer(),一台机器上可能运行多个实例,避免关闭出错

# mongo // 从linux命令行进入mongod命令行
> use admin // 切换到管理员模式
> db.shutdownServer() // 关闭mongodb服务
> server should be down...//关闭
  • 关闭后用 ps aux | grep mongo 查看是否由此进程,也可用kill杀死mongo进程
kill <mongod process ID>
kill -2 <mongod process ID>
kill -9命令迫使进程在运行时突然终止,进程在结束后不能自我清理。可能导致系统资源无法正常释放,一般不推荐使用,除非其他办法都无效。

备份恢复

如果是带验证的数据库指定要验证的数据库把密码的选项房子最后
mongodump -h IP地址 –port 端口 -u 用户名 –authenticationDatabase “验证的数据库一般是admin” -d 数据库 -o 文件存在路径 -p 密码

  • 备份
//MongoDB备份
mongodump -h IP --port 端口 -u 用户名  -d 数据库 -o 文件存在路径 -p 密码

//mongorestore还原数据库
mongorestore -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 --drop 文件存在路径
  • 参数说明
//一次性备份所有:
mongodump,mongorestore

mongodump:
命令格式:mongodump -h dbhost  -d dbname -o dbdirectory

-h:  mongodb所在服务器地址,例如127.0.0.1,也可以指定端口:127.0.0.1:8080 

-d:  需要备份的数据库名称,例如:test_data

-o:  备份的数据存放的位置,例如:/home/bak

-u:  用户名称,使用权限验证的mongodb服务,需要指明导出账号

-p:用户密码,使用权限验证的mongodb服务,需要指明导出账号密码

mongorestore:
命令格式:mongorestore -h dbhost -d dbname -dorectoryperdb dbdireactory

-h:  mongodb所在服务器地址

-d:  需要恢复备份的数据库名称,例如:test_data,可以跟原来备份的数据库名称不一样

-directoryperdb: 备份数据所在位置,例如:/home/bak/test

-drop: 加上这个参数的时候,会在恢复数据之前删除当前数据;
  • 拷贝
直接拷贝,注意不要拷贝diagnostic.data文件夹的内容,有风险测试没通过不要用copy的方式
  • 导出json格式数据
//导出数据
sudo mongoexport --db 数据库名称 -c 表名 --out newdbexport.json

无法连接

  • 执行mongod看报什么错误一般是不能find,data/db
//注意文件的建立路径,然后--dbpath指定mongod.conf文件中path写到/data就好
sudo mkdir -p data/db
  • cd /tmp 删除/tmp$ 下mongodb-27017.sock,如果有的话
mongodb-27017.sock
Ubuntu 20.04 下 MongoDB 备份恢复与迁移实战指南 MongoDB 备份恢复不是简单的文件复制,而是涉及存储引擎一致性、oplog 时间点控制和系统级协调的工程实践。其核心原理在于保障 WiredTiger 引擎的 journal 日志、内存状态与磁盘数据三者原子性对齐;技术价值体现在实现秒级 RPO/RTO、支撑跨版本迁移与副本集演进;典型应用场景包括 Ubuntu 20.04 生产环境的日常备份、灾备恢复及向 Kubernetes 或新 OS 的平滑迁移。本文聚焦 oplog 连续性保障与 systemd 服务协同机制,详解 mongodump/mong 阅读详情

相关推荐

MongoDB自动备份脚本

MongoDB自动备份脚本,自动删除几天前的备份,带全部注释

MongoDB 从4.4到7.0各个版本特性概览

速览本文将从以下方面介绍数据库 MongoDB 4.4、5.0、6.0、7.0版本:MongoDB4.4 新特性隐藏索引(Hidden Indexes)重定义分片键(Refinable Shard Keys)复合哈希分片键(Compound Hashed Shard Keys)对冲读(Hedged Reads)同步建索引(Simultaneous Indexing)复制读请求(Mirrored R...

qq_34692500的博客 5242

shell实现自动备份mongodb

实现mongodb自定义备份,可实现自定义库、自定义集合、自定义备份周期,使用方便,脚本易维护!

mongodb数据库备份脚本

【代码】mongodb数据库备份脚本。

weixin_56319285的博客 291

详解电路设计中的RC电路

​ 一、什么是RC电路 RC电路是指由电阻R和电容C组成的电路,它是脉冲产生和整形电路中常用到 的电路。 常见的RC充、放电电路、RC积分电路合RC微分电路接下来详细讲解。 二、RC充、放电电路 RC充、放电电路如下图所示,下面通过充电和放电两个过程来分析此电路。 ​RC充、放电电路图 (1)RC充电电路 RC充电电路图如下图(a)所示 RC充电电路图及充电曲线图 ​由上图分析: 将上图a中开关S置于“1”处,电源E开始通过电阻R对电容C充电,由于刚开始充电时电容两端没有..

IT xiaobai 4万+

Shader Graph入门

Shader Graph 简介

zaizai1007的博客 1万+

MongoDB备份

参考链接:https://www.mongodb.com/zh-cn/docs/database-tools/mongorestore/#std-program-mongorestore。参考链接:https://www.mongodb.com/zh-cn/docs/database-tools/mongodump/mongodump-examples/5、mongodump 更适合全库备份,mongoexport更适合单个集合备份。1、mongoimport 速度较快,但不保证数据完整导入。

oKongSi的博客 1159

MIPI CSI-2数据加扰技术解析:LFSR实现与多通道同步策略

本文深入解析了MIPI CSI-2协议中的数据加扰技术,该技术通过线性反馈移位寄存器(LFSR)对图像数据进行随机化处理,旨在有效降低高速传输中的电磁干扰。文章详细阐述了LFSR的工作原理、D-PHY与C-PHY物理层不同的初始化与同步策略,并探讨了多通道同步的实现方法,为高速接口的EMC设计与调试提供了实践指导。

weixin_29207149的博客 385

mongodb 重启_MongoDB——Ubuntu安装及配置带认证的副本集(亲测)

一、概述介绍: 在做 MongoDB 数据备份时,需要进行数据的复制冗余,此时可以用副本集,并且为了传输安全,需要加上认证。我的 MongoDB 版本是 4.0.18,都是本人亲自打过的命令,被网上的卡了很久。二、安装 MongoDB导入公钥sudoapt-keyadv--keyserverhkp://keyserver.ubuntu.com:80--recv9DA31620...

weixin_39612057的博客 417

ComfyUI整合包、秋叶ComfyUI、Florence节点报错下载并加载Florence2模型No module named ‘timm.layers‘、ComfyUI报错解决

步骤操作1打开2地址栏输入cmd并回车3输入命令:4安装完成后重新打开 ComfyUI,执行工作流,即可解决报错。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1243

【ESP32设备通信】-LoRa通信

在本文中,我们将使用 Arduino IDE 将 ESP32 与 LoRa SX1278 (Ra-02) 模块连接起来。 我们将创建一个真实的示例项目,通过 LoRa 无线打开/关闭 LED 进行演示。

视觉与物联智能 1890

Astroluma数据备份与恢复:确保您的配置永不丢失

Astroluma是一款功能强大的自托管家庭实验室仪表板,它帮助您集中管理日常任务和服务。作为您的个人生产力中心,**Astroluma数据备份**和**配置恢复**功能至关重要,能确保您的个性化设置、应用集成和任务管理数据永不丢失。本文将为您提供完整的Astroluma备份与恢复指南,涵盖从基础设置到高级策略的所有内容。 ## 为什么Astroluma数据备份如此重要?🚨 Astrolum

gitblog_01118的博客 480

游戏战斗系统架构设计的演绎之路——从一坨意大利面条到一座精密钟表

摘要:游戏战斗系统架构设计的演进之路 本文系统梳理了游戏战斗系统从早期街机到现代3A大作的架构发展历程。70-80年代的街机游戏采用基础碰撞盒判定(如《街头霸王》);90年代实现动画融合与状态机架构(《最终幻想》《拳皇》);2000年后MMO引入服务器验证与同步技术(《魔兽世界》);3D时代融合物理引擎与智能AI(《GTA5》《只狼》);移动端则发展出轻量化架构与云端判定(《王者荣耀》)。现代战斗系统已实现模块化、数据驱动和热更新,未来趋势是AI裁判与云战斗系统。这一演进过程展现了技术与创意的完美结合,数百

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 801

Notesnook Sync Server备份与恢复:确保笔记数据安全的完整策略

在当今数字时代,**笔记数据安全**是每个用户最关心的问题。Notesnook Sync Server作为一款开源的笔记同步服务器,提供了完整的自托管解决方案,让您完全掌控自己的数据。本文将详细介绍如何为您的Notesnook Sync Server实施全面的**备份与恢复策略**,确保笔记数据永不丢失。 ## 📊 为什么需要备份策略? Notesnook Sync Server采用分布式架

gitblog_00922的博客 1004

深度学习论文: Towards Total Recall in Industrial Anomaly Detection

在大规模工业制造中,能够准确检测出有缺陷的零件至关重要。我们在这项工作中面临的一个特殊挑战是冷启动问题:仅使用正常的示例图像来训练模型。虽然可以针对每个类别手动设计解决方案,但我们的目标是构建能够自动适用于多个任务的系统。最佳的方法是将ImageNet模型的嵌入特征与异常检测模型结合起来。在本文中,我们在这一研究基础上进行了扩展,并提出了PatchCore,它利用了一个具有最大代表性的正常补丁特征内存库。通过这种方法,我们能够更好地解决冷启动问题,并提高系统在多任务上的性能。

mingo_敏 1876

ROS2 - 乐动激光雷达 LD06

STL-06P 主要由激光测距核心,无线传电单元,无线通讯单元,角度测量单元、电机驱动单元和机械外壳组成。STL-06P 测距核心采用 DTOF 技术,可进行每秒 5000 次的测距。每次测距时,雷达发射出红外激光,激光遇到目标物体后被反射到单光子接收单元。

机器人控制与仿真应用 3487

Pckd备份与恢复:数据安全的最佳实践指南

在当今数字时代,数据安全对于任何在线服务都至关重要。Pckd作为一款强大的自托管URL短链接服务,您的短链接数据、用户信息和点击分析都是宝贵的数字资产。本文将为您详细介绍Pckd备份与恢复的完整指南,确保您的数据安全无忧。🚀 ## 📊 为什么Pckd备份如此重要? Pckd不仅是一个简单的链接缩短工具,更是一个完整的数据分析平台。它存储着: - **短链接映射关系** - 每个短链接对应

gitblog_01012的博客 1055

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

OBS Studio 硬件编码器不识别:NVENC、QSV 消失的完整排查指南

OBS Studio 是免费开源的直播与录屏软件。你刚装完显卡驱动,兴冲冲打开 OBS Studio 准备开播,结果「设置 → 输出」里编码器下拉框只剩 x264——NVENC、QSV 一个都找不到。别慌,OBS Studio 硬件编码器不识别这类故障九成卡在驱动和系统层,插件本身往往没坏。这篇指南带你从硬件到软件一层层剥开,一次定位。 ## 三个判断题:先搞清楚问题卡在哪一层 别急着乱点菜单

gitblog_00890的博客 931

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Windows系统下MongoDB数据库自动备份全攻略:安全、高效、自动化

本文介绍在Windows系统下实现MongoDB自动备份的完整方案。首先分析手动备份的不足,提出自动化备份的必要性。详细说明环境准备要求,对比不同备份工具的特点,推荐使用官方mongodump工具。提供基础备份脚本编写方法,包括单数据库和全库备份脚本示例。重点讲解Windows任务计划程序的配置步骤,包括图形界面和PowerShell高级配置方法。最后介绍增量备份、加密压缩等高级策略。该方案可实现MongoDB数据库的定时自动备份,保障数据安全。

cx1050306424的博客 1652

MongoDB数据备份恢复实战:从mongodump到mongorestore的保姆级避坑指南

本文详细介绍了MongoDB数据备份与恢复的实战技巧,重点解析了mongodump和mongorestore工具的使用方法及常见陷阱。内容涵盖备份策略设计、权限配置、性能优化、特殊集合处理以及生产环境验证方案,帮助开发者构建可靠的MongoDB数据备份恢复体系,确保数据安全与业务连续性。

weixin_33739523的博客 265

超简单!ET框架MongoDB数据库备份一键搞定:Shell/PowerShell实现指南

ET框架作为Unity3D客户端和C#服务器框架,广泛使用MongoDB作为数据库解决方案。本文将为你介绍如何通过Shell/PowerShell脚本实现ET框架数据库的一键备份,让数据安全防护变得简单高效。 ## 📋 为什么需要数据库备份? 在游戏开发和运营过程中,数据库备份是保障数据安全的关键环节。ET框架使用MongoDB作为核心数据库,其数据包含玩家信息、游戏状态等重要内容。定期备份

gitblog_00796的博客 634

Cowrie蜜罐备份与恢复策略:确保监控数据安全可靠

Cowrie作为一款强大的SSH/Telnet蜜罐工具,其收集的攻击数据对于安全分析至关重要。本文将详细介绍Cowrie蜜罐的备份与恢复策略,帮助用户确保监控数据的安全可靠,有效应对数据丢失风险。 ## 一、Cowrie核心数据识别 Cowrie运行过程中会产生多种关键数据,这些数据是备份的核心对象: ### 1.1 日志数据 Cowrie的日志文件记录了所有攻击活动,包括登录尝试、命令执行

gitblog_00278的博客 389

数据安全防线:LightRAG知识图谱备份与灾难恢复全指南

在企业级RAG应用中,数据安全与业务连续性至关重要。本文将系统介绍LightRAG知识图谱的完整备份恢复方案,从数据导出、定时备份到灾难恢复,帮助运维人员构建可靠的数据安全防线。通过实用工具与最佳实践,确保您的知识库在面对意外时能够快速恢复,业务运转不受影响。 ## 数据备份基础:知识图谱导出功能解析 LightRAG提供了灵活的数据导出接口,支持将知识图谱以多种格式备份,满足不同场景下的存档

gitblog_00920的博客 861

Windows下MongoDB自动化备份方案与实战

数据库备份是保障数据安全的核心环节,尤其对于MongoDB这类文档型数据库。不同于传统关系型数据库的备份方式,MongoDB需要结合其存储引擎特性设计备份策略。通过mongodump工具可以实现逻辑备份,而文件系统快照则适合TB级大库的热备份。自动化备份方案能显著提升数据可靠性,典型实现包含定时触发、压缩存储、完整性验证等关键步骤。在Windows环境下,可结合任务计划程序和PowerShell脚本构建完整流水线。对于电商、金融等关键业务场景,建议采用混合备份策略并集成云存储同步,同时需特别注意备份加密和权

weixin_26934905的博客 129

基于 Docker 的 MongoDB 部署与使用指南

本文介绍MongoDB的定义与适用场景,详述Docker环境下的准备工作、单节点快速部署、Docker Compose配置、初始化脚本编写、数据持久化方案、备份恢复方法,还提供副本集搭建示例、生产环境要点及常见问题排查,附官方与权威参考资源。

java_logo的专栏 1138

MongoDB - MongoDB备份与恢复:全量备份、增量备份的实现方法

本文介绍MongoDB备份与恢复的实现方法。主要内容包括:全量备份通过mongodump命令行工具实现,提供基本语法和多种备份示例,并给出Java调用mongodump的代码实现;增量备份结合oplog实现变更数据捕获,说明oplog工作原理并提供增量备份流程和Java实现方案。文章还对比了不同备份策略的优缺点,帮助开发者根据业务需求选择合适的数据保护方案。

千淘万漉虽辛苦,吹尽狂沙始到金 2万+
上一篇: Node.js+MongoDB上线测试环境部署
下一篇: 阿里云配置 node.js + Nginx 反向代理
composurext
博客等级 码龄10年 15粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值