做外贸网站好的公司,中文网址和中文域名区别,灵犀科技高端网站建设,建设公司网站费用怎么做账本文主要介绍MongoDB在Windows系统和Linux系统中如何实现自动定时备份。 目录 MongoDB在Windows系统中实现自动定时备份MongoDB在Linux系统中实现自动定时备份备份步骤备份恢复 MongoDB在Windows系统中实现自动定时备份
要在Windows系统中实现自动定时备份MongoDB数据库#… 本文主要介绍MongoDB在Windows系统和Linux系统中如何实现自动定时备份。 目录 MongoDB在Windows系统中实现自动定时备份MongoDB在Linux系统中实现自动定时备份备份步骤备份恢复 MongoDB在Windows系统中实现自动定时备份
要在Windows系统中实现自动定时备份MongoDB数据库可以使用Windows任务计划程序和MongoDB自带的mongodump工具。 下面是MongoDB在Windows系统中实现自动定时备份的操作步骤 创建备份目录。在计算机上创建一个用于存储备份文件的目录。例如在D盘根目录下创建一个文件夹命名为“mongodb_backup”。 创建备份脚本。使用文本编辑器(如Notepad)创建一个批处理文件命名为“backup.bat”。在备份脚本中输入以下代码 echo off
SET date%date:~0,4%%date:~5,2%%date:~8,2%
SET time%time:~0,2%%time:~3,2%%time:~6,2%
SET datetime%date%_%time%
mongodump -h 127.0.0.1:27017 -d dbName -o D:/mongodb_backup/%datetime%设置定时任务。使用Windows系统的任务计划程序创建一个新的任务来定时运行备份脚本。在任务计划程序中创建一个基本任务并设置以下属性 在“触发器”选项卡中选择要运行备份脚本的日期和时间。 在“操作”选项卡中将操作设置为“启动程序”并输入备份脚本的路径和名称。 在“条件”选项卡中根据需要设置其他选项例如仅在计算机处于活动状态时运行任务等。
测试备份是否成功。手动运行备份脚本检查备份文件是否被正确创建。如果备份文件正确生成则说明备份已经成功可以删除手动创建的备份文件。
这样就完成了MongoDB在Windows系统中实现自动定时备份的操作步骤。需要注意的是备份脚本中的“dbName”需要替换为实际要备份的数据库名称。另外需要定期清理备份文件以避免备份文件过多占用磁盘空间。
MongoDB在Linux系统中实现自动定时备份
备份步骤
下面是在Linux系统中使用crontab实现MongoDB自动定时备份的步骤
创建一个备份脚本
首先创建一个备份脚本这个脚本将用来执行实际的备份操作。可以使用mongodump命令进行备份。以下是一个简单的备份脚本名为mongobackup.sh
#!/bin/sh
#mongoDB目录
PATH/root/mongodb/bin:/sbin:/bin:/usr/sbin:/usr/bin
#设置备份目录
OUT_DIR/data/backup/mongod_bak/mongod_bak_now #临时备份目录
TAR_DIR/data/backup/mongod_bak/mongod_bak_list #备份存放路径
DATEdate %Y_%m_%d #获取当前系统时间
DB_HOST127.0.0.1:27017 #数据库地址和端口号
DB_USERusername #数据库账号
DB_PASSpassword #数据库密码
DB_NAME-d dbName #备份的数据库名称-d 不能删除
DAYS7 #DAYS7代表删除7天前的备份即只保留最近7天的备份
TAR_BAKmongod_bak_$DATE.tar.gz #最终保存的数据库备份文件名
cd $OUT_DIR #进入此目录
rm -rf $OUT_DIR/* #删除临时目录
mkdir -p $OUT_DIR/$DATE #创建目录
mongodump $DB_NAME -h$DB_HOST -u$DB_USER -p$DB_PASS -o $OUT_DIR/$DATE/ #备份全部数据库
cd $OUT_DIR #进入此目录
tar -zcvf $TAR_DIR/$TAR_BAK $DATE #压缩为.tar.gz格式
find $TAR_DIR/ -mtime $DAYS -delete #删除7天前的备份文件上述代码的功能是执行MongoDB的备份命令将备份文件夹自动打包成.tar.gz文件格式并且可指定保留N天内的备份文件过期自动删除。mongodump命令用于备份MongoDB数据库-h选项指定MongoDB服务器的主机地址-o选项指定备份文件的输出目录。
给备份脚本授予执行权限
使用chmod命令为备份脚本赋予执行权限
chmod x mongobackup.sh添加crontab任务
使用crontab命令添加自动备份任务。例如以下命令将在每天凌晨2点执行备份操作
crontab -e在打开的文件中添加以下内容
0 2 * * * /path/to/mongobackup.sh这将在每天凌晨2点运行备份脚本备份文件将保存在指定的目录中。
验证备份是否成功
可以手动运行备份脚本来验证备份是否成功并检查备份文件是否正确生成。如果备份文件已经生成则说明自动备份任务已经成功设置。
使用上述步骤可以在Linux系统中实现MongoDB自动定时备份并且可以通过修改crontab任务的配置来更改备份的时间间隔。
备份恢复
执行以下备份恢复命令即可恢复备份。
mongorestore -d dbName -uusername -ppassword --drop /data/backup/mongod_bak/mongod_bak_now/2023_12_12/dbName这段代码的具体功能如下 mongorestore表示使用MongoDB自带的恢复工具mongorestore。 -d dbName表示将备份数据恢复到名为dbName的数据库中。 -uusername -ppassword表示用于连接MongoDB数据库的用户名和密码。 –drop表示在恢复数据之前删除目标数据库中的所有文档避免出现冲突。 /data/backup/mongod_bak/mongod_bak_now/2023_12_12/dbName表示备份数据所在的文件夹路径即要恢复的备份文件所在的路径和备份时使用的数据库名称。
这段代码的作用是将指定路径下的MongoDB备份文件恢复到指定的数据库RV中并在恢复前删除RV中的所有文档。用户名和密码用于连接MongoDB数据库。