博客
关于我
mongodb定时备份数据库
阅读量:795 次
发布时间: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 优化器 key_mysql – 选择*和查询优化器
    查看>>
    MySQL 优化:Explain 执行计划详解
    查看>>
    Mysql 会导致锁表的语法
    查看>>
    mysql 使用sql文件恢复数据库
    查看>>
    mysql 修改默认字符集为utf8
    查看>>
    Mysql 共享锁
    查看>>
    MySQL 内核深度优化
    查看>>
    mysql 内连接、自然连接、外连接的区别
    查看>>
    mysql 写入慢优化
    查看>>
    mysql 分组统计SQL语句
    查看>>
    Mysql 分页
    查看>>
    Mysql 分页语句 Limit原理
    查看>>
    MySql 创建函数 Error Code : 1418
    查看>>
    MySQL 创建新用户及授予权限的完整流程
    查看>>
    mysql 创建表,不能包含关键字values 以及 表id自增问题
    查看>>
    mysql 删除日志文件详解
    查看>>
    mysql 判断表字段是否存在,然后修改
    查看>>
    MySQL 到底能不能放到 Docker 里跑?
    查看>>
    mysql 前缀索引 命令_11 | Mysql怎么给字符串字段加索引?
    查看>>
    mysql 协议的退出命令包及解析
    查看>>