MongoDB:Shell脚本,用于在Mongodb中进行自动热备份

时间:2015-12-28 12:22:38

标签: bash mongodb shell database-backups

我写了下面的shell脚本来进行自动备份。现在,如果我想采取热备份如何编写脚本。我知道我们需要使用db.fsyncLock()。但是如何在shell脚本中使用它。请告诉我,因为我是shell脚本的新手。

RedisCacheManager

2 个答案:

答案 0 :(得分:1)

  1. 创建目录" auto_backup"。
  2. 创建" autobackup.sh"
  3.   

    DIR = date +%d%m%y

         

    DEST = auto_backup / $ DIR

         

    mkdir $ DEST

         

    mongodump -d -o $ DEST

    1. chmod + X autobackup.sh
    2. 转到cron标签 在Ubuntu
    3.   

      sudo crontab -e

      in centos

        

      sudo vim / etc / crontab

      m h dm M dw用户名.sh文件的路径

      1 0 * * *用户名/home/username/auto_backup_script.sh

        

      m:分钟(0-59)

           

      h:小时(0-23)

           

      dm:月份日期(1-31)

           

      M:月(1-12)

           

      dw:星期几(0 - 6)(星期日= 0或7)

           

      用户名:系统用户名

      保存。

      并重新启动您的cron服务。

答案 1 :(得分:0)

下面的脚本可以帮助我:

DIR = date +%m_%d_%y:%H:%M:%S cd / opt / mongo / bin ./mongo admin --eval" printjson(db.fsyncLock())" ./mongodump --port 27020 --db db --out / data / mongo / backup / DIR ./mongo admin --eval" printjson(db.fsyncUnlock())"