mongodb 数据自动备份
创建Mongodb数据库备份目录
mkdir -p ~/backup/mongod_bak/mongod_bak_now
mkdir -p ~/backup/mongod_bak/mongod_bak_list
新建Mongodb数据库备份脚本
mkdir ~/crontab/ && vi ~/crontab/mongod_bak.sh #新建文件,输入以下代码
#!/bin/sh
DUMP=~/mongodb-linux-x86_64-4.0.1/bin/mongodump # mongodump备份文件执行路径
OUT_DIR=~/backup/mongod_bak/mongod_bak_now # 临时备份目录
TAR_DIR=~/backup/mongod_bak/mongod_bak_list # 备份存放路径
DATE=`date +%Y_%m_%d` # 获取当前系统时间
DB_USER=youuser # 数据库账号
DB_PASS=youpassword # 数据库密码
DB_NAME=diary # 要备份的数据恢复库名字
DAYS=30 # DAYS=30代表删除30天前的备份,即只保留最近30天的备份
TAR_BAK="mongod_$DB_NAME_bak_$DATE.tar.gz" # 最终保存的数据库备份文件名
cd $OUT_DIR
rm -rf $OUT_DIR/*
mkdir -p $OUT_DIR/$DATE
$DUMP -h 127.0.0.1 --port 27017 -u $DB_USER -p $DB_PASS -d $DB_NAME -o $OUT_DIR/$DATE # 备份全部数据库
tar -zcvf $TAR_DIR/$TAR_BAK $OUT_DIR/$DATE # 压缩为.tar.gz格式
find $TAR_DIR/ -mtime +$DAYS -delete # 删除天前的备份文件
chmod +x ~/crontab/mongod_bak.sh #修改文件属性,使其可执行
crontab -e # 修改/etc/crontab #添加计划任务
# 在下面添加
30 4 * * * sh ~/crontab/mongod_bak.sh #表示每天凌晨4点30执行备份
# 30 4 * * * sh ~/crontab/mongod_bak.sh >/dev/null 2>&1 # 在命令后添加 `>/dev/null 2>&1` 则不发送日志到邮件。
重新启动crond使设置生效
/sbin/service crond reload #重新载入配置
chkconfig --level 35 crond on #加入开机自动启动:
/sbin/service crond start #启动服务
crontab -l #列出crontab文件
恢复备份
./mongorestore -h 127.0.0.1 --port 27017 -u youuser -p youpassword -d diary ~/backup/mongod_bak/mongod_bak_now/
修改 linux 时区
如果时区不一样, 会造成转换的麻烦或理解错误。
date #查看时间和日期
cal #查看日历
ll /etc/localtime #查看目前所用时区
timedatectl list-timezones |grep Shanghai #查找中国时区的完整名称
timedatectl set-timezone Asia/Shanghai #以完整名称修改时区
date -s 11/03/2009 #设置日期
date -s 17:55:55 #设置日间
hwclock -w #写入当前时间日期到 bios 避免重启失效
clock -w #写入当前时间日期到 CMOS
定时任务
当 crond 执行任务失败时会给用户发一封邮件
cat /var/log/cron # 查看定时任务的执行列表
cat /var/spool/mail/root # 查看定时任务发送给用户的邮件, 可看执行情况
mongodb 数据自动备份的更多相关文章
- Linux下使用SSH、Crontab、Rsync三工具实现数据自动备份
Linux下使用SSH.Crontab.Rsync三工具实现数据自动备份 作为网管人员大概都无一例外的经历过系统备份,尤其是重要系统的备份.重要数据库系统的备份工作.由于备份是个频繁而琐碎的工作,如何 ...
- GitLab 数据自动备份
gitlab自动备份 周期性计划任务: crontab -e * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create service crond ...
- Oracle 数据自动备份 通过EXP备份
先写个批处理文件(.bat),具体如下:@echo off@echo ================================================@echo windows环境下 ...
- MongoDB 数据自动同步到 ElasticSearch
我们产品中需要全文检索的功能,后端数据存储主要使用了 MySQL + MongoDB,而其中需要检索的内容是在 MongoDB 中的. MongoDB 本身是自带文本索引功能的,但是,不支持中文.术业 ...
- MongoDB 数据迁移 备份 导入(自用)
MongoDB bin文件夹下 备份:mongodump -h IP:PORT -d 库名 -c 集合名 -o 存储路径 恢复:mongorestore -h IP:PORT -d 库名 -c 集合名 ...
- Linux下shell脚本实现mongodb定时自动备份
MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功 ...
- 用shell脚本实现MongoDB数据库自动备份
一.创建MongoDB备份目录 用来存放数据 mkdir -p /data/mongodb_bak/mongodb_bak_now mkdir -p /data/mongodb_bak/mongodb ...
- SQL SERVER怎样将某个服务器上面的数据自动备份到另一台服务器上面(异地备份)
一:试验背景 异地备份好处:(待补充) 1:异地备份了把原有服务器数据放在另外一个位置,避免些物理损害. 比把数据刻录光盘和原始数据放同房间了房间失火了备份数据也没有了要放另外地方避免了 就是备份 ...
- FtpCopy数据定时自动备份软件(FTP定时备份)
1. 软件说明 FtpCopy是一款免费的FTP数据自动备份软件,如果FtpCopy对您有较大的帮助,欢迎捐赠我们,我们对您表示衷心的感谢! 如果有需求的话会一直更新下去,将软件做到极致! 有问题可直 ...
随机推荐
- Jmeter学习之--dubbo接口测试
背景:公司的h5和APP都需要调用许多非http的服务,需要对服务的性能和自动化测试 工具:IDEA ,maven,Jmeter 参考文档: https://testerhome.com/topics ...
- 两个ArrayList之间求交并补
class ArraylistCalculate{ // 两个整数集求差集 public ArrayList<Integer> integerArrayListDifference( Ar ...
- lnmp 切换PHP版本,并且安装swoole
lnmp 切换php版本 进入 lnmp 安装的目录,进入install.sh 的目录执行: sudo ./install.sh mphp 备注: find / -name install.sh 备注 ...
- MyBatis基本使用
MyBatis是轻量级的数据库访问API,封装了JDBC操作,可以实现对实体对象的CRUD操作. MyBatis体系结构主要组成部分: 配置文件:SqlMapConfig.xml 主配置文件 ...
- 牛客随笔(c++)
1.关于指针的字节大小: 当为32位系统时大小为4字节,64位系统时大小为8字节: #include<iostream> using namespace std; int main() { ...
- 北京大学Cousera学习笔记--2-计算导论与C语言基础-第一讲.计算机的基本原理-图灵机
有限状态读写头从一个初始状态开始,对存储器上的输入数据进行读或写操作,经过有限步操作之后停机,此时存储器上的输出数据就是计算结果 (1) 图灵机的构成: 1.一条存储带:双向无限延长:上有一个个的小方 ...
- Centos7下使用Ceph-deploy快速部署Ceph分布式存储-操作记录
之前已详细介绍了Ceph分布式存储基础知识,下面简单记录下Centos7使用Ceph-deploy快速部署Ceph环境: 1)基本环境 192.168.10.220 ceph-admin(ceph-d ...
- 030-IHttpModule
MyHttpModule.cs public class MyHttpModule : IHttpModule { public void Dispose() { } public void Init ...
- 微信小程序如何实现点击链接跳转到手机自带浏览器
最近遇到一个需求.公司有一个业务,制作的小程序需要跳出微信打开一个指定的我们自己的页面,拿到这个需求后我们团队分开去找资料研究方案,通过微信的开发文档.腾讯的第三方开发文档我们都查阅过资料但是最终只找 ...
- C#调用Microsoft.DirectX.DirectSound问题记录及解决
问题1:初始化结构体WaveFormat或其他变量时卡死 修改App.config,修改方法如下: 原App.config <?xml version="1.0" encod ...