#!/bin/bash # Delete Backup Time delete_time=7 # Backup User & Mysql Command db_user="root" password="111111" mysql="/usr/local/mysql/bin/mysql" mysqldump="/usr/local/mysql/bin/mysqldump" # Path & IP log_dir="/mysqlbackup" backup_dir="/mysqlbackup" ip_ethernet="eth0" ip=$(/sbin/ifconfig $ip_ethernet|grep Bcast|awk -F[:] '{print $2}'|awk '{print $1}') # Backup Options conf="--default-character-set=utf8 --hex-blob --opt --extended-insert=false --routines --triggers --master-data --log-error=${log_dir}/mysqldump-error.log --single-transaction --quick --set-gtid-purged=OFF -B" # First Check if [ ! -d $log_dir ];then mkdir $log_dir;fi if [ ! -d $backup_dir ];then mkdir $backup_dir;fi # Dump & Record echo -e "$(date +%F)\n$(date "+%H:%S") backup begin" >> ${log_dir}/mysqldump.log name_opt=$(echo $ip|awk -F. '{print "."$3"."$4}') for db_name in `${mysql} -u${db_user} -p${password} -Ne "show databases;"|egrep -v "(mysql|test|information_schema|performance_schema)"` do start=`date "+%Y-%m-%d %H:%M:%S"` startutc=`date +%s -d "$start"` ${mysqldump} -u${db_user} -p${password} ${conf} ${db_name} |gzip > ${backup_dir}/${db_name}${name_opt}-$(date +%F).sql.gz end=`date "+%Y-%m-%d %H:%M:%S"` endutc=`date +%s -d "$end"` if [ $? = 0 ] then echo "Start:$start End:$end $db_name backup successful,Interval:$interval;" >> ${log_dir}/mysqldump.log else echo "$(date "+%H:%S") $db_name backup faild" >> ${log_dir}/mysqldump.log fi done find ${backup_dir} -name "*.gz" -mtime +$delete_time |xargs rm -f
mysql分库备份脚本.sh
原创
©著作权归作者所有:来自51CTO博客作者verycici的原创作品,请联系作者获取转载授权,否则将追究法律责任
下一篇:mysql全备份+二进制增量备份
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
MySQL 8自动备份脚本密码安全警告
作者:田逸(formyz)目标需求接到一个任务,需要在凌晨四点对一个数据库进行备
mysql v8 MySQL -
数据库mysql 分库备份脚本
数据库mysql 分库备份脚本 &nbs
脚本 mysql备份 数据库定期备份 -
mysqldump使用分库备份的脚本
mysqldump使用分库备份的脚本
mysqldump使用分库备份的脚本