zoukankan      html  css  js  c++  java
  • mongodump备份数据

    使用mongodump备份数据库,以下是备份脚本。可以用 which -a mongodump 查看PATH的位置。

    把脚本保存为backup.sh, {{ mongodump_path }} 换成你的mongodump的PATH位置,修改dbHost、dbPort、dbName、dbUsername、dbPassword,增加可执行权限:  chmod a+x backup.sh ,然后执行脚本:  ./backup.sh 

     1 #!/bin/sh 
     2 #备份Mongo 数据库:
     3 echo "1.初始化..."
     4 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:{{ mongodump_path }}
     5 export PATH 
     6 
     7 #数据库
     8 dbHost="127.0.0.1"
     9 dbPort=27017
    10 dbName=""
    11 dbUsername=""
    12 dbPassword=""
    13 
    14 #备份目录
    15 bakDir="`pwd`/db_backup"
    16 timeStr="`date +%Y%m%d`"
    17 fileName=$dbName"_${timeStr}.tar"
    18 realDbBakDir=$bakDir/$timeStr
    19 
    20 if [ ! -x "$bakDir" ];then
    21 mkdir $bakDir
    22 fi
    23 cd $bakdir
    24 echo "备份的数据库为:" $dbName
    25 echo "备份目录为:" $bakDir
    26 echo $dbName "数据库备份文件目录为:" $realDbBakDir
    27 echo "2.备份开始:"
    28 mongodump2 -h $dbHost:$dbPort -u $dbUsername -p $dbPassword  --authenticationDatabase $dbName -d $dbName -o $realDbBakDir
    29 echo "3.备份结束,开始打包"
    30 for((i=1;i<10;i++))
    31 do
    32    echo "当前等待时间" $i ""
    33    sleep 1
    34 done
    35 echo "备份文件:" $realDbBakDir/$dbName/$fileName
    36 tar -czvf $realDbBakDir/$fileName $realDbBakDir/$dbName/
    37 echo "4.打包完成,开始scp上传"
    38 #scp $realDbBakDir/$fileName  root@xxxx
    39 echo "5.上传成功"
    40 echo "备份成功日志`date`" >> $realDbBakDir/bak.log

    如果不打包,可以把29~39行注释掉。

    mongodump参数解析:(可以用mongodump --help查看)

    • -h:mongodb连接的host和port;用 --host <mongodb_host> --port <port> 也是相同的
    • -u:用户名(--username)
    • -p:密码(--password)
    • --authenticationDatabase:认证数据库
    • -d:指定数据库名称
    • -c:指定集合名称
    • -o:指明要导出的文件名
    • -q:指明导出数据时的查询条件
  • 相关阅读:
    Failed to start mysqld.service: Unit not found
    Nginx转发前后端分离跨域引发的问题-转发请求header头中含有下划线,无法转发取值
    云上Centos7新硬盘挂载流程
    马哥教育第二阶段考试
    Linux集群准备-同步
    Lucene查询语法
    权限系统设计
    docker compose thinkphp5.1 lnmp环境搭建加项目部署全过程
    docker compose 的使用
    [转载]PHP-FPM
  • 原文地址:https://www.cnblogs.com/shengmading/p/14626760.html
Copyright © 2011-2022 走看看