博客
关于我
mongodb定时备份数据库
阅读量:798 次
发布时间:2023-02-09

本文共 859 字,大约阅读时间需要 2 分钟。

MongoDB数据库自动备份脚本

创建备份路径

mkdir -pv /data/bak/mongodb

MongoDB自动备份脚本

以下是用于 MongoDB 数据库自动备份的脚本,脚本内容基于 mongodump 工具:

#!/bin/bash# 按日期备份backup_date=$(date +%Y%m%d%H%M)# 确认是否传递参数if [ -n "$1" ]; then    db_name=$1fiecho "开始备份数据库:$db_name"# 设置备份目录base_folder=/data/bak/mongodb# mongodump备份目录bak_folder=$base_folder/$backup_date# 执行mongodump备份mongodump --quiet -h 127.0.0.1:27017 -d $db_name -o $bak_folder# 压缩备份文件cd $base_folder && tar -zcf $backup_date.tar.gz ./# 清理备份目录rm -rf $bak_folder

##脚本说明

  • 脚本会根据当前日期生成备份文件夹名
  • 支持传入数据库名称(可选)
  • 使用 mongodump 工具进行备份
  • 备份文件会压缩成 .tar.gz 格式
  • 备份完成后自动清理临时文件
  • 定时任务配置

    crontab -e 中添加计划任务

    10 12,18 * * * find /root/mongodb-linux-x86_64-2.6.10/bin/bak.sh > /data/bak/logs

    自动清理备份文件

    10 23 * * * find /data/bak/mongodb/ -mtime +7 -type f | xargs rm -rf

    ##备份策略

    • 备份时间:每天 12 点和 18 点
    • 备份文件:按日期存储
    • 自动清理:每周清理上周备份文件

    这样配置后,MongoDB 数据库将按时备份并自动清理历史备份文件,确保数据库运行稳定。

    转载地址:http://snffk.baihongyu.com/

    你可能感兴趣的文章
    Mysql中怎样设置指定ip远程访问连接
    查看>>
    mysql中数据表的基本操作很难嘛,由这个实验来带你从头走一遍
    查看>>
    Mysql中文乱码问题完美解决方案
    查看>>
    mysql中的 +号 和 CONCAT(str1,str2,...)
    查看>>
    Mysql中的 IFNULL 函数的详解
    查看>>
    mysql中的collate关键字是什么意思?
    查看>>
    MySql中的concat()相关函数
    查看>>
    mysql中的concat函数,concat_ws函数,concat_group函数之间的区别
    查看>>
    MySQL中的count函数
    查看>>
    MySQL中的DB、DBMS、SQL
    查看>>
    MySQL中的DECIMAL类型:MYSQL_TYPE_DECIMAL与MYSQL_TYPE_NEWDECIMAL详解
    查看>>
    MySQL中的GROUP_CONCAT()函数详解与实战应用
    查看>>
    MySQL中的IO问题分析与优化
    查看>>
    MySQL中的ON DUPLICATE KEY UPDATE详解与应用
    查看>>
    mysql中的rbs,SharePoint RBS:即使启用了RBS,内容数据库也在不断增长
    查看>>
    mysql中的undo log、redo log 、binlog大致概要
    查看>>
    Mysql中的using
    查看>>
    MySQL中的关键字深入比较:UNION vs UNION ALL
    查看>>
    mysql中的四大运算符种类汇总20多项,用了三天三夜来整理的,还不赶快收藏
    查看>>
    mysql中的字段如何选择合适的数据类型呢?
    查看>>