zoukankan      html  css  js  c++  java
  • Linux下的MySQL自动备份脚本

    写了个Linux下的MySQL备份脚本 这是第一版,只支持备份一个数据库,每天晚上2点用定时器把这个脚本跑一下就自动备份好了。后续会做可支持备份多个数据库,备份失败短信发送到手机,自动清除过期备份。

    1. #!/bin/bash
    2. #Script:backup_mysql
    3. #Version:Release 1.0
    4. #author:www.dba-china.com
    5. #date:2011-10-26
    6. backup_time=`date +%Y%m%d%H%M`  #定义备份详细时间
    7. backup_Ymd=`date +%Y%m%d` #定义备份目录中的年月日时间
    8. backup_7ago=`date -d '7 days ago' +%Y%m%d` #七天之前的日期
    9. backup_dir=/backup/mysql/$backup_Ymd  #备份文件夹全路径
    10. backup_database="dba-china" #要备份的数据库名称
    11. mysql_user="root"
    12. mysql_password="root"
    13. #mysql_host="localhost"
    14. #mysql_port="3306"
    15. #判断MYSQL是否启动,mysql没有启动则备份退出
    16. mysql_ps=`ps -ef |grep mysql |wc -l`
    17. mysql_listen=`netstat -an |grep LISTEN |grep $mysql_port|wc -l`
    18. if [ [$mysql_ps == 0] -o [$mysql_listen == 0] ]; then
    19.         echo "ERROR:MySQL is not running! backup stop!"
    20.         exit;
    21. else
    22.         echo "MySQL running ok!"
    23. fi
    24. #连接到mysql数据库,无法连接则备份退出
    25. mysql -u$mysql_user -p$mysql_password <
    26. use mysql;
    27. select host,user from user where user='root' and host='localhost';
    28. exit
    29. end
    30. flag=`echo $?`
    31. if [ $flag != "0" ]; then
    32.         echo "error:Can't connect mysql server! backup stoped!"
    33.         exit;
    34. else
    35.         echo "MySQL connect ok! Backup start......"
    36.         #db=`echo $backup_database |cut -d ',' -f1`
    37.         db=$backup_database       
    38.         if [ $db == '' ];then
    39.                 echo "ERROR:no database to backup!"
    40.         else
    41.                 echo "database $db backup start..."
    42.                 `mkdir -p $backup_dir`
    43.                 `mysqldump -u$mysql_user -p$mysql_password $db > $backup_dir/$db$backup_time.sql`
    44.                 echo "database $db backup success!"
    45.         fi
    46. fi




  • 相关阅读:
    Python:循环语句
    Python:list用法
    ettercap局域网DNS欺骗实现过程
    Linux关于用户信息的一些命令
    业务逻辑漏洞
    Linux安装Sqlmap等工具
    CVE-2015-1635(MS15-034 )进行DOS攻击
    HTTP.SYS远程代码执行漏洞测试(ms15-034)
    爬虫学习笔记
    MSF利用ms17-010漏洞过程记录
  • 原文地址:https://www.cnblogs.com/firmy/p/2301638.html
Copyright © 2011-2022 走看看