关于我们
技术分享
技术分享
UbuntuServer的mysql和webapps全自动异地备份
UbuntuServer的mysql和webapps全自动异地备份
2021-06-09
crontab文件位置:/etc/crontab
每天的凌晨3点1分 mysql备份
01 03 * * * root /usr/sbin/bakmysql
每天的凌晨4点1分 复制mysql所有数据库
01 04 * * * root /usr/sbin/bakmysql_fz
每天的凌晨5点1分 删除规定时间前备份的文件
01 05 * * * root /usr/sbin/xkedu_del
每周6的凌晨2点1分 应用程序备份
01 02 * * 6 root /usr/sbin/webappsbak
每周6的凌晨6点1分 sh执行脚本将应用程序异地备份
01 06 * * 6 root sh /usr/sbin/webappsbak.sh
每天的凌晨6点30分 sh执行脚本将mysql异地备份
30 06 * * * root sh /usr/sbin/mysqlbak.sh
附上6个脚本文件
bakmysql
rq=`date +%Y%m%d` sudo mysqldump -u root -p密码 --databases 库名1 库名2 > /var/mysqldata/mysql_$rq.sql sleep 20 tar zcvf /var/mysql_backup/mysql_$rq.tar.gz /var/mysqldata/mysql_$rq.sql sleep 20
bakmysql_fz
sudo /etc/init.d/mysql stop sleep 20 sudo /etc/init.d/tomcat6 stop sleep 20 rq=`date +%Y%m%d` tar zcvf /var/mysqldata/fz/mysql$rq.tar.gz /var/lib/mysql sudo /etc/init.d/tomcat6 start sudo /etc/init.d/mysql start
xkedu_del
DATE=$(date +%Y%m%d) aa_DATE=$(date "-d 7 day ago" +%Y%m%d) bb_DATE=$(date "-d 10 day ago" +%Y%m%d) cc_DATE=$(date "-d 20 day ago" +%Y%m%d) sudo rm /var/mysqldata/fz/mysql$aa_DATE.tar.gz sudo rm /var/mysqldata/mysql_$bb_DATE.sql sudo rm /var/mysql_backup/mysql_$cc_DATE.tar.gz
webappsbak
rq=`date +%Y%m%d` tar zcvf /var/webappsbak/webappsbak$rq.tar.gz /var/lib/tomcat6/webapps DATE=$(date +%Y%m%d) aa_DATE=$(date "-d 7 day ago" +%Y%m%d) bb_DATE=$(date "-d 10 day ago" +%Y%m%d) cc_DATE=$(date "-d 20 day ago" +%Y%m%d) sudo rm /var/webappsbak/webappsbak_$aa_DATE.tar.gz sudo rm /var/webappsbak/webappsbak_$bb_DATE.sql sudo rm /var/webappsbak/webappsbak_$cc_DATE.tar.gz
以上4个文件要赋予可执行文件:
chmod +x /usr/sbin/文件名
webappsbak.sh 脚本文件
#!/bin/bash rq=`date +%Y%m%d` HOST=ip地址 USER=用户名 PASSWORD=密码 PORT=端口号 TARGET=/var/webappsbak/webappsbak$rq.tar.gz #需要上传的文件名及位置 DEST_DIR=/mnt/ad1/oabak/webappsbak/ #目的地路径 echo "Starting to sftp ${TARGET} to ${HOST}" lftp -u ${USER},${PASSWORD} -p $PORT sftp://${HOST} <<EOF cd ${DEST_DIR} put ${TARGET} bye EOF
mysqlbak.sh
#!/bin/bash rq=`date +%Y%m%d` HOST=ip地址 USER=用户名 PASSWORD=密码 PORT=端口 TARGET=/var/mysql_backup/mysql_$rq.tar.gz DEST_DIR=/mnt/ad1/oabak/mysqlbak/ echo "Starting to sftp ${TARGET} to ${HOST}" lftp -u ${USER},${PASSWORD} -p $PORT sftp://${HOST} <<EOF cd ${DEST_DIR} put ${TARGET} bye EOF
- 标签:
-
技术分享
您可能感兴趣的新闻 换一批
热门文章
现在下载,可享30天免费试用