mysql 备份 ftp_mysql备份并上传到ftp服务器

#!/bin/bash

# mysql备份并上传到ftp服务器

# ctocode-zwj <982215226@qq.com>

# 2019-02-27 21:00

#DUMP=/usr/bin/mysqldump    #mysqldump备份程序执行路径

OUT_DIR=/backup/mysql   #备份文件存放路径

LINUX_USER=root            #系统用户名

DB_NAME=shxx_hrhg           #要备份的数据库名字

DB_USER=shxx_hrhg              #数据库用户名

DB_PASS=HwddFfDMaJEYctAy             #密码

DAYS=7         #DAYS=7代表删除7天前的备份,即只保留最近7天的备份

#ftp-config

ftp_host="111.231.142.160"

ftp_user="hrhg"

ftp_pass="*******"

cd $OUT_DIR                #进入备份存放目录

DATE=`date +%Y_%m_%d`      #获取当前系统时间

HourMin=`date +%H%M`       #获取当前系统时间时分

OUT_SQL="$DB_NAME-$DATE.sql"        #备份数据库的文件名

TAR_SQL="$DB_NAME-$DATE.sql.tar.gz" #最终保存的数据库备份文件名

#$DUMP -u$DB_USER -p$DB_PASS $DB_NAME --default-character-set=utf8 --opt -Q -R --skip-lock-tables> $OUT_SQL #备份

#上面那条是别人备份用的语句,我平常用的是下面的,/usr/local/mysql/bin/mysqldump为mysql安装目录,必须写对路径

mysqldump -u$DB_USER -p$DB_PASS -R --single-transaction --add-drop-database --databases $DB_NAME  >  $OUT_SQL

tar -zcvf $TAR_SQL  $OUT_SQL  #压缩为.tar.gz格式

rm $OUT_SQL   #删除最原始为压缩的备份文件

#chown  $LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL  #更改备份数据库文件的所有者

chown  $LINUX_USER:$LINUX_USER $TAR_SQL  #更改备份数据库文件的所有者

find $OUT_DIR -name "mydb_dump*" -type f -mtime +$DAYS -exec rm {} \;  #删除7天前的备份文件(注意:{} \;中间有空格)

deldate=` date -d -7day +%Y_%m_%d `   #删除ftp服务器空间7天前的备份

#fpt 登录 ,如果要单独测试下面的ftp脚本是否正常,需要去掉<

ftp -v -n $ftp_host<

user $ftp_user $ftp_pass

binary  #设置二进制传输

cd mysql_data  #进入ftp目录

prompt

mput $DB_NAME-$DATE.sql.tar.gz

mdelete $DB_NAME-$deldate.sql.tar.gz   #删除ftp空间7天前的备份

close

bye !

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值