博客
关于我
mongodb定时备份数据库
阅读量:793 次
发布时间: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 client library_MySQL数据库之zabbix3.x安装出现“configure: error: Not found mysqlclient library”的解决办法...
    查看>>
    MySQL Cluster 7.0.36 发布
    查看>>
    Multimodal Unsupervised Image-to-Image Translation多通道无监督图像翻译
    查看>>
    MySQL Cluster与MGR集群实战
    查看>>
    multipart/form-data与application/octet-stream的区别、application/x-www-form-urlencoded
    查看>>
    mysql cmake 报错,MySQL云服务器应用及cmake报错解决办法
    查看>>
    Multiple websites on single instance of IIS
    查看>>
    mysql CONCAT()函数拼接有NULL
    查看>>
    multiprocessing.Manager 嵌套共享对象不适用于队列
    查看>>
    multiprocessing.pool.map 和带有两个参数的函数
    查看>>
    MYSQL CONCAT函数
    查看>>
    multiprocessing.Pool:map_async 和 imap 有什么区别?
    查看>>
    MySQL Connector/Net 句柄泄露
    查看>>
    multiprocessor(中)
    查看>>
    mysql CPU使用率过高的一次处理经历
    查看>>
    Multisim中555定时器使用技巧
    查看>>
    MySQL CRUD 数据表基础操作实战
    查看>>
    multisim变压器反馈式_穿过隔离栅供电:认识隔离式直流/ 直流偏置电源
    查看>>
    mysql csv import meets charset
    查看>>
    multivariate_normal TypeError: ufunc ‘add‘ output (typecode ‘O‘) could not be coerced to provided……
    查看>>