• mongdb配置,自动备份与恢复


    安装mongodb

    1、下载mongodb安装包

    cd /opt

    wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.10.tgz

    2、解压安装包

    tar -xvf mongodb-linux-x86_64-4.0.10.tgz

    3、在/opt/mongodb-4.0.10目录下创建mongo.conf

    mv mongodb-linux-x86_64-4.0.10 mongodb-4.0.10

    cd mongodb-4.0.10

    vim mongo.conf

    systemLog:

       destination: file

       path: "/opt/mongodb-4.0.10/logs/mongodb.log"

       logAppend: true

    storage:

       dbPath: "/data/mongodb"

       journal:

          enabled: true

       mmapv1:

         smallFiles: true

       wiredTiger:

          engineConfig:

            configString: cache_size=345M

    processManagement:

          fork: true

    net:

       #bindIp: 127.0.0.1

       port: 28018

    setParameter:

       enableLocalhostAuthBypass: false

    4、创建mongodb数据目录,和日志目录

    mkdir  -p  /data/mongodb

    mkdir  /opt/mongodb-4.0.10/logs

    5、/opt/mongodb-4.0.10下创建启动脚本和停止脚本

    vim start.sh

    /opt/mongodb-4.0.10/bin/mongod --config=/opt/mongodb-4.0.10/mongo.conf

    vim stop.sh

    ps -ef|grep mongo.conf|grep -v grep|awk '{printf $2}'|xargs kill -9

    备份与恢复

    1、自动备份

      编写脚本backMongo.sh

      dumpCmd=/opt/mongodb-4.0.10/bin/mongodump

      backDir=/tmp/mongodb

      tarDir=/data/mongodb_tar_dir

      DATE=`date +%Y-%m-%d-%H:%M:%S`

      backDay=15

      if [ ! -d $backDir ];then

              mkdir $backDir

      fi

      cd $backDir && $dumpCmd -h 127.0.0.1:28018

      cd $backDir && tar -zcvf $tarDir/$DATE"_mongo.tar.gz" dump/

      find $tarDir/ -mtime +$backDay -delete

      设置定时任务,每天5点执行

      vim /etc/crontab

      0 5  *  *  * root  sh /opt/mongodb-4.0.10/backMongo.sh

    2、数据还原

      准备一个全新的数据库(做实验用的全新的数据库,小伙伴可以自己根据自己的需求来),如图:

           

      执行恢复语句:./bin/mongorestore -h 127.0.0.1:28018 --dir=./dump

      出现一下提示说明恢复完成  

      

      再进入数据库查看数据,整个数据库已还原,如图:

      

  • 相关阅读:
    学习 CosmosDB (NoSql)
    <linux-sed> sed基本用法
    grep 正则表达式用引号括起来和元字符加反斜杠转义的测试
    CACTI批量添加linux主机sh脚本
    一个简单的C共享库的创建及Python调用此库的方法
    Linux下的C的开发之GCC的初级使用
    AcitveReocrd事件和关联操作
    Samrty技术的 初步了解
    Ubuntu下配置Tomcat
    在ubuntu中安装jdk
  • 原文地址:https://www.cnblogs.com/Christine-ting/p/10638210.html
Copyright © 2020-2023  润新知