1. 该脚本只适用于MYISAM引擎,如果需要适用于innodb,请修改备份命令即可。

#!/bin/bash
#该脚本只能用来备份myisam引擎数据库
#author:vaedit
#date:2017/9/18
  
#备份过程
function beifen(){
BACKDIR=`date "+%Y-%m-%d-%H"`
mkdir /backup/$BACKDIR -p
/usr/local/mysql/bin/mysqlhotcopy -u hotcopyer -p 123456 -S /tmp/mysql1.sock mysql /backup/$BACKDIR --allowold > /dev/null 2>&1
#记录日志
if [ "$?" -ne 0 ]
    then
    echo "$BACKDIR failed" >>/tmp/backup.log
else
    echo "$BACKDIR ok" >> /tmp/backup.log
fi
#把备份通过ncftp上传到远端ftp服务器
cd /backup
tar czf ${BACKDIR}.tar.gz $BACKDIR/*
rm $BACKDIR -rf
HOST='192.168.246.128'
USER='backup'
PASSWD='123456'
ncftpput -u $USER -p $PASSWD $HOST . /backup/${BACKDIR}.tar.gz
}
beifen &>/dev/null