首页 > 数据库技术 > 详细

Mysql数据备份-crontab进行排成计划

时间:2021-08-20 15:55:17      阅读:29      评论:0      收藏:0      [点我收藏+]

背景:需要对Mysql做数据库备份,

解决方案方案:使用到Linux自带的crontab进行排成设定,通过自行编写的一个备份数据库的脚本把数据库进行备份,同时加入到crontab中就可以进行自动备份啦

 技术分享图片

 

 

 技术分享图片

 

 

 技术分享图片

 

 

 mysql_local_backup.sh

#!/bin/bash

USERNAME=root
PASSWORD=Foxconn123$
DATE=`date +%Y-%m-%d`
OLDDATE=`date +%Y-%m-%d -d ‘-30 days‘`
H=127.0.0.1
P=3307

#MYSQL=/usr/local/mysql/bin/mysql
#MYSQLDUMP=/usr/local/mysql/bin/mysqldump
#MYSQLADMIN=/usr/local/mysql/bin/mysqladmin

BACKDIR=/data/mysql_local_backup
[ -d ${BACKDIR} ] || mkdir -p ${BACKDIR}
[ -d ${BACKDIR}/${DATE} ] || mkdir ${BACKDIR}/${DATE}
[ ! -d ${BACKDIR}/${OLDDATE} ] || rm -rf ${BACKDIR}/${OLDDATE}
#MYSQLDUMP_LIST=`/usr/local/mysql/bin/mysql -u root -p‘Foxconn123$‘ -P 3307 -h 127.0.0.1 -e "show databases"| grep -Evi "database|infor|perfor|sys|mysql"`
MYSQLDUMP_LIST=`mysql -u root -u${USERNAME} -P${P} -h${H} -p${PASSWORD} -e "show databases"| grep -Evi "database|infor|perfor|sys|mysql"`

for DBNAME in ${MYSQLDUMP_LIST}
do
  mysqldump -B -F --master-data=2 --flush-privileges  --flush-logs --triggers --routines --events --single-transaction -u${USERNAME} -P${P} -h${H} -p${PASSWORD} ${DBNAME} | gzip > ${BACKDIR}/${DATE}/${DBNAME}-full_backup-${DATE}.sql.gz

  /bin/sleep 2
  logger "${DBNAME} has been backup successful - $DATE"
done

 

Mysql数据备份-crontab进行排成计划

原文:https://www.cnblogs.com/shexunyu/p/15166005.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!