Linux备份MySQL xshell_linux数据库备份并通过ftp上传脚本分享

#!/bin/bash

#author: 505056357@qq.com

echo "backup job start"

#设置要备份的网站目录,即是网站的根目录

file=/home/wwwroot/default

#设置本地备份目录,用于存放打包后的文件

backpath=/home/wwwroot/bkdata/

dbuser=root

#数据密码,要记得用单引号将把整个密码引起来,如果密码中有单引号就用双引号,嘿嘿

dbpwd='123456'

dbname=car

domain=192.168.0.187

user=ftpuser

userpwd='123456'

bkdate=$(date +%Y%m%d)

sqlfile_sql=${dbname}_${bkdate}.sql

sqlfile_gz=${dbname}_${bkdate}.tar.gz

sqlfp=${backpath}${bkdate}/$sqlfile_sql

if [ -e $backpath${bkdate} ]

then

echo $backpath is exists.

else

mkdir -p $backpath${bkdate}

fi

#执行数据库备份,/apps/mysql/bin/mysqldump修改为你实际环境的路径

/apps/mysql/bin/mysqldump -u $dbuser -p$dbpwd $dbname > ${sqlfp}

#对备份之后的数据库文件压缩,或者在数据库备份时通过加入参数直接进行压缩

tar zcf $backpath${bkdate}/$sqlfile_gz -C ${backpath}${bkdate} ${sqlfile_sql}

#删除未压缩SQL的文件

rm -f ${sqlfp}

#生成的文件名格式:web_网站目录名_20130419.tar.gz

fn=web_${file##*/}_${bkdate}.tar.gz

tar zcf $backpath${bkdate}/$fn -C ${file%/*} ${file##*/}

#以下操作为FTP自动连接并把本地文件上传到异地服务器上

/usr/bin/lftp ${domain} << END

user ${user} ${userpwd}

lcd ${backpath}

mirror -R ${bkdate}

exit

END

echo "backup job done"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值