Auth: Jin

Date: 20140403

Content:

  1. #!/bin/bash -
  2. ### auth: Jin
  3. ### date:
  4. ### Desc: 根据配置文件里的ip,端口(dblist文件格式为192.168.201.::sso:root:passwd),数据库名dump备份mysql数据,清理指定天前的备份文件,通过ssh隧道追加同步到其他IDC服务器上
  5. ### Usage: ./dump_mysqldatabase.sh
  6.  
  7. BACKDIR=/data/BackupPC/database
  8. LIST=${BACKDIR}/dblist
  9. BACKUPLOG=${BACKDIR}/dump_mysqldatabase.log
  10. TODAY=`date +%F`
  11. DELDAY=`date -d "7 day ago" +%F`
  12. NUM=$(cat $LIST | wc -l)
  13. DUMPBIN=/usr/local/mysql/bin/mysqldump
  14. RSYNCBIN=/usr/bin/rsync
  15.  
  16. function log ()
  17. {
  18. echo " " >> $BACKUPLOG
  19. echo "###########################" >> $BACKUPLOG
  20. echo "`date +%F/%T` $1" >> $BACKUPLOG
  21. echo "###########################" >> $BACKUPLOG
  22. }
  23.  
  24. log START
  25.  
  26. ### dump
  27. for (( i=; i<=$NUM; i=i+ ));do
  28. IP=$(sed -n "$i"p $LIST | awk -F : '{print $1}')
  29. PORT=$(sed -n "$i"p $LIST | awk -F : '{print $2}')
  30. DB=$(sed -n "$i"p $LIST | awk -F : '{print $3}')
  31. USER=$(sed -n "$i"p $LIST | awk -F : '{print $4}')
  32. PASSWD=$(sed -n "$i"p $LIST | awk -F : '{print $5}')
  33. ${DUMPBIN} -h${IP} -P${PORT} -u${USER} -p${PASSWD} ${DB} --opt | gzip - > ${BACKDIR}/db-${TODAY}.${DB}.sql.gz
  34. if [ $? -eq ];then
  35. echo "${IP} ${PORT} ${DB} backup Sucessful" >> $BACKUPLOG
  36. else
  37. echo "${IP} ${PORT} ${DB} backup Fail" >> $BACKUPLOG
  38. fi
  39. done
  40.  
  41. ### delete
  42. for (( i=; i<=$NUM; i=i+ ));do
  43. DB=$(sed -n "$i"p $LIST | awk -F : '{print $3}')
  44. rm -f ${BACKDIR}/db-${DELDAY}.${DB}.sql.gz
  45. if [ -f "${BACKDIR}/db-${DELDAY}.${DB}.sql.gz" ]; then
  46. echo "${BACKDIR}/db-${DELDAY}.${DB}.sql.gz delete Fail" >> $BACKUPLOG
  47. else
  48. echo "${BACKDIR}/db-${DELDAY}.${DB}.sql.gz delete OK" >> $BACKUPLOG
  49. fi
  50. done
  51.  
  52. ### rsync to other IDC
  53. ${RSYNCBIN} -av -e"ssh" ${BACKDIR}/ root@10.1.0.22:${BACKDDIR}/
  54. if [ $? -eq ];then
  55. echo "JQ IDC rsync to ZJ IDC OK" >> $BACKUPLOG
  56. else
  57. echo "JQ IDC rsync to ZJ IDC Fail" >> $BACKUPLOG
  58. fi
  59.  
  60. log END

dump备份mysql库的更多相关文章

  1. 利用mysqldump 与 nginx定时器 定时备份mysql库

    1.安装mysqldump(如果备份远程mysql库,本地不用安装mysql 也可以单独使用) yum -y install holland-mysqldump.noarch 2.编写备份脚本 首先这 ...

  2. dump备份mysql表

    Auth: Jin Date: 20140403 Content: #!/bin/bash - ### auth: Jin ### ### Desc: 备份输入库里的所有表,清理指定天前的备份文件 # ...

  3. mysql dump备份 、 mysql还原操作练习

    1.备份mysql.dump 备份MySQL数据库的命令 mysqldump -h主机名 -u用户名 -p密码 数据库名字 > 备份的数据库名字.sql 例子: mysqldump -uroot ...

  4. MySQL数据库无完整备份删库,除了跑路还能怎么办?

    1.背景 前段时间,由于运维同事的一次误操作,清空了内网核心数据库,导致了公司内部管理系统长时间不可用,大量知识库内容由于没有备份险些丢失. 结合这两天微盟的删库跑路事件,我们可以看到,数据库的备份与 ...

  5. Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份)

    原文地址:http://www.tuicool.com/articles/RZRnq2 Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对In ...

  6. 备份时如何排除掉默认的 information_schema 和 mysql 库?

    备份时如何排除掉默认的 information_schema 和 mysql 库? mysql -e "show databases;" -uroot -ppassword | g ...

  7. Percona备份mysql全库及指定数据库(完整备份与增量备份)

    Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份) Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对I ...

  8. 使用shell定时自动备份mysql数据库

    #!/bin/bash id="root" #用户名 pwd="123456" #密码 dbs="blog.ewsd.cn dangjian.ewsd ...

  9. mydumper 快速高效备份mysql,按照表生成备份文件,快速恢复

    Mydumper是一个针对MySQL和Drizzle的高性能多线程备份和恢复工具.开发人员主要来自MySQL,Facebook,SkySQL公司.目前已经在一些线上使用了Mydumper. Mydum ...

随机推荐

  1. TCP之connect

    1. connect函数: #include <sys/socket.h> int connect(int sockfd, const struct sockaddr *servaddr, ...

  2. C json实战引擎 一 , 实现解析部分

    引言 以前可能是去年的去年,写了一个 c json 解析引擎用于一个统计实验数据项目开发中. 基本上能用. 去年在网上 看见了好多开源的c json引擎 .对其中一个比较标准的 cJSON 引擎 深入 ...

  3. http-server:一个简单的零配置命令行的http服务器

    首先简介一下http-server: http-server是一个简单的零配置命令行http服务器,他对于生产使用来说足够强大,他是简单和可删节足以用于测试,足够简单易用,而且可用于本地开发 1.首先 ...

  4. HDR文件格式简介及其读写函数

    转自:http://blog.csdn.net/lqhbupt/article/details/7828827 1.HDR简介HDR的全称是High-DynamicRange(高动态范围).在此,我们 ...

  5. 【hdoj_2082】找单词

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=2082 此题采用母函数的知识求解,套用母函数模板即可: http://blog.csdn.NET/ten_s ...

  6. Simditor学习--vuejs集成simditor

    唠叨 因为项目需要我自己研究了和集成在vue方便以后再使用,详情官方文档在这里.希望大家有好的建议提出让我继续改进. simditor介绍 Simditor 是团队协作工具 Tower 使用的富文本编 ...

  7. 利用Node 搭配uglify-js压缩js文件,批量下载图片到本地

    Node的便民技巧-- 压缩代码 下载图片 压缩代码 相信很多前端的同学都会在上线前压缩JS代码,现在的Gulp Webpack Grunt......都能轻松实现.但问题来了,这些都不会,难道就要面 ...

  8. lvm笔记

    安装LVMyum -y install lvm* 创建PV# pvcreate /dev/md5 /dev/sdf1 /dev/sdg 查看PV# pvdisplay 还可以使用命令pvs 和pvsc ...

  9. 转:攻击JavaWeb应用[2]-CS交互安全

    转:http://static.hx99.net/static/drops/tips-164.html 攻击JavaWeb应用[2]-CS交互安全 园长 · 2013/07/08 14:54 注:本节 ...

  10. HDU 1011 Starship Troopers【树形DP/有依赖的01背包】

    You, the leader of Starship Troopers, are sent to destroy a base of the bugs. The base is built unde ...