【shell脚本】ftp自动上传mysql备份文件

上一篇中 mysql每日备份shell脚本 给出了使用mysqldump备份到本地的脚本,接着下面是利用ftp把备份文件传输到远程服务器的脚本。 当然也可以用scp,rsync等等方案。

#!/bin/sh
############################
#orangleliu
#ftp 上传指定的文件
#centos 使用 (mac上日期的格式化并不是很好使)
#注意ftp一定要切换成二进制模式
############################
#上传的服务器设置
HOST='ftp.wificdn.com'
USER='ddd'
PASSWD='er#backp.2'

#上传和要删除的文件名称,保留10天
BASE_DIR="/home/backup"
BACKUP_LOG="${base_dir}/mysql_backup.log"
DBNAME="radius"
FILE_UPLOAD="${DBNAME}-$(date +"%Y-%m-%d").sql.gz"
FILE_DELE="${DBNAME}-$(date -d "-10 day" +"%Y-%m-%d").sql.gz"

echo "ftp upload $FILE_UPLOAD finished at $(date +'%Y-%m-%d %H:%M:%S')" >> "$BACKUP_LOG"

ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD
binary
lcd $BASE_DIR
prompt
mput $FILE_UPLOAD
mdelete $FILE_DELE
quit
END_SCRIPT
exit 0

主要注意的问题:

  • 这里使用的环境是centos
  • ftp一定要切换成二进制模式

你可能感兴趣的:(mysql,备份,ftp,上传,自动)