vim .mysqldump.sh #脚本都放置到/d1212/scripts下,创建.mysqldump.sh的文件目的是,这个文件里有数据库的连接信息,要隐藏掉。所以加了.。
#!/bin/bash
shopt-s-onounset
exportPATH=/usr/bin/:/bin
bakdir=/d1212/dbback/msyql
date=$(date+%Y_%m_%d_%H)
dbname=‘XXX‘#数据库名称
dbuser=‘XXX‘#数据库用户
dbpwd=‘XXX‘#数据库密码
dbip=‘XX.XX.XX.XX‘#阿里云内网连接地址
if[!-d$bakdir]
then
mkdir-p$bakdir
fi
mysqldump--set-gtid-purged=OFF-h$dbip-u$dbuser-p$dbpwd
--lock-tables$dbname|gzip>$bakdir/${dbname}_$date.sql.gz
#调用上边定义的变量
find$bakdir-mtime+30-typef|xargsrm-rf#找到/d1212/dbback/msyql下
的文件,删除30天之前的文件
3. chmod 700 .mysqldump #给予权限
4. vim /etc/cron.d/mysql #添加定时任务,添加如下内容
0 */6 * * * root /bin/bash /d1212/scripts/.mysqldump.sh
#每6小时备份一次。
5. service crond restart #重启cron服务,使之生效。
这样就是脚本自动备份阿里云rds数据库
本文出自 “程小白” 博客,谢绝转载!