#!/bin/bash 
#Shell Command For Backup MySQL Database Everyday Automatically By Crontab 
  
USER=root 
PASSWORD="admin" 
DATABASE="nansha_car_manager" 
HOSTNAME="localhost" 
  
 
BACKUP_DIR=/home/mysql_back/ #备份文件存储路径 
LOGFILE=/home/mysql_back/data_backup.log #日记文件路径 
DATE=`date '+%Y%m%d-%H%M'` #日期格式(作为文件名) 
DUMPFILE=$DATE.sql #备份文件名 
ARCHIVE=$DATE.sql.tgz #压缩文件名 
OPTIONS="-h$HOSTNAME -u$USER -p$PASSWORD $DATABASE" 
#mysqldump -help 
  
#判断备份文件存储目录是否存在,否则创建该目录 
if [ ! -d $BACKUP_DIR ] ; 
then 
        mkdir -p "$BACKUP_DIR" 
fi 
  
#开始备份之前,将备份信息头写入日记文件 
echo " " >> $LOGFILE 
echo " " >> $LOGFILE 
echo "———————————————–" >> $LOGFILE 
echo "BACKUP DATE:" $(date +"%y-%m-%d %H:%M:%S") >> $LOGFILE 
echo "———————————————– " >> $LOGFILE 
  
#切换至备份目录 
cd $BACKUP_DIR 
#使用mysqldump 命令备份制定数据库,并以格式化的时间戳命名备份文件 
mysqldump $OPTIONS > $DUMPFILE 
#判断数据库备份是否成功 
if [[ $? == 0 ]]; then 
    #创建备份文件的压缩包 
    tar czvf $ARCHIVE $DUMPFILE >> $LOGFILE 2>&1 
    #输入备份成功的消息到日记文件 
    echo “[$ARCHIVE] Backup Successful!” >> $LOGFILE 
    #删除原始备份文件,只需保 留数据库备份文件的压缩包即可 
    rm -f $DUMPFILE 
 #-ctime表示创建时间,这里表示删除创建时间为多少天之前的文件,也就是结果只保留多少天的数据
 find $BACKUP_DIR -ctime +7 -type f -name "*.tgz" -print > deleted.txt
 echo -e "delete files:\n" >> $LogFile
 #循环删除匹配到的文件
 cat deleted.txt | while read LINE
 do
  rm -rf $LINE
  echo $LINE>> $LogFile
 done
else 
    echo “Database Backup Fail!” >> $LOGFILE 
fi 
#输出备份过程结束的提醒消息 
echo “Backup Process Done”

# 写日到cron job
# crontab -e 
# */1 * * * * /home/auto_log.sh >/dev/null  2>&   #shell脚本目录

mysql备份shell脚步的更多相关文章

  1. 转CentOS — MySQL备份 Shell 脚本

    http://www.cnblogs.com/bruceleeliya/archive/2012/05/04/2482733.html 使用 mysqldump 备份数据库,通过 FTP 上传到备份服 ...

  2. linux mysql备份shell

    #!/bin/bash # Shell script to backup MySql database # Author: Henry he # Last updated: -- # crontab ...

  3. CentOS — MySQL备份 Shell 脚本

    原文链接:http://www.cnblogs.com/bruceleeliya/archive/2012/05/04/2482733.html 新建一个 Shell 脚本文件 vi /home/wo ...

  4. centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课

    centos   shell编程6一些工作中实践脚本   nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志  直接送给bc做计算  gzip  innobacku ...

  5. MySql自动备份shell

    MySql黑屏备份是每个运维工程师必备的技能,以下是MySQL自动备份脚本: #/bin/bash#This is mysql backup shell on 2019/4/28 BAKUP_DIR= ...

  6. MySQL自动备份shell脚本

    在数据库的日常维护工作中,除了保证业务的正常运行以外,就是要对数据库进行备份,以免造成数据库的丢失,从而给企业带来重大经济损失.通常备份可以按照备份时数据库状态分为热备和冷备,按照备份数据库文件的大小 ...

  7. centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数据库读写分离 双主搭建 mysql.history 第二十九节课

    centos  MySQL主从配置 ntsysv   chkconfig  setup命令  配置MySQL 主从 子shell  MySQL备份  kill命令  pid文件  discuz!论坛数 ...

  8. 备份 MySQL 的 shell 脚本(mysqldump版本) shell脚本

    #!/bin/bash # 备份 MySQL 的 shell 脚本(mysqldump版本) # 定义变量 user(数据库用户名),passwd(数据库密码),date(备份的时间标签) # dbn ...

  9. 【shell文字】mysql每日备份shell文字

    每天固定时间使用mysqldump 备份mysql数据. #!/bin/bash #每天早上4点, mysql备份数据 orangleliu #chmod 700 backup.sh #crontab ...

随机推荐

  1. 设计一个算法,採用BFS方式输出图G中从顶点u到v的最短路径(不带权的无向连通图G採用邻接表存储)

    思想:图G是不带权的无向连通图.一条边的长度计为1,因此,求带顶点u和顶点v的最短的路径即求顶点u和顶点v的边数最少的顶点序列.利用广度优先遍历算法,从u出发进行广度遍历,类似于从顶点u出发一层一层地 ...

  2. Python 获取文件路径及文件目录

    import os print (os.path.dirname(__file__)) print (os.path.abspath(__file__)) print (os.path.abspath ...

  3. webview自动循环播放

    <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android=&q ...

  4. (转)js获取内网ip地址,操作系统,浏览器版本等信息

    这次呢,说一下使用js获取用户电脑的ip信息,刚开始只是想获取用户ip,后来就顺带着获取了操作系统和浏览器信息. 先说下获取用户ip地址,包括像ipv4,ipv6,掩码等内容,但是大部分都要根据浏览器 ...

  5. 4.3 使用STM32控制MC20进行GPRS通讯

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  6. [转+整理]linux shell 将字符串分割成数组

    原文链接:http://1985wanggang.blog.163.com/blog/static/776383320121745626320/ a="one,two,three,four& ...

  7. Ubuntu安装配置samba

    一. samba的安装: sudo apt-get insall sambasudo apt-get install smbfs 二. 创建共享目录: mkdir /home/chars/shares ...

  8. Python之简单函数练习(Day30)

    1.写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作 def modify_file(filename,old,new): import os with open(filen ...

  9. mssql 中文乱码 字库集 问题解决方法

    The database could not be exclusively locked to perform the operation(SQL Server 5030错误解决办法)   SQL S ...

  10. ibatis工作原理

    摘要: iBATIS 通过 SQL Map 将 Java 对象映射成 SQL 语句和将结果集再转化成 Java 对象,与其他 ORM 框架相比,既解决了 Java 对象与输入参数和结果集的映射,又能够 ...