mysql 备份脚本以及定时任务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 备份脚本以及定时任务相关的知识,希望对你有一定的参考价值。
数据是企业最宝贵的资源,作为运维人员备份数据库的数据是特别重要的一项工作,以下是个人查找资料以及个人总结所记录的mysql数据库备份脚本,记录在此作为学习和复习笔记。
(1)分库备份脚本
#/bin/sh #version 0.1 MYUSER=root MYPASS=123123 #SOCKET=/data/3306/mysql.sock MYLOGIN="mysql -u$MYUSER -p$MYPASS " MYDUMP="mysqldump -u$MYUSER -p$MYPASS -B" DATABASE="$($MYLOGIN -e "show databases;"|egrep -vi "Data|_schema|mysql")" for dbname in $DATABASE do MYDIR=/server/backup/$dbname [ ! -d $MYDIR ] && mkdir -p $MYDIR $MYDUMP $dbname|gzip >$MYDIR/${dbname}_$(date +%F).sql.gz
(2)分库分表备份脚本:
#/bin/sh MYUSER=root PASSWD=123123 #SOCKET=/data/3306/mysql.sock MYLOGIN="mysql -u$USER -p$PASSWD " MYDUMP="mysqldump -u$USER -p$PASSWD " DATEBASE="$($MYLOGIN -e "show databases;"|egrep -vi "Data|_schema|mysql")" for dbname in $DATEBASE do TABLE="$($MYLOGIN -e "use $dbname;show tables;"|sed ‘1d‘)" for tname in $TABLE do MYDIR=/server/backup/$dbname/${dbname}_$(date +%F) [ ! -d $MYDIR ] && mkdir -p $MYDIR $MYDUMP $dbname $tname |gzip >$MYDIR/${dbname}_${tname}_$(date +%F).sql.gz done done ~ (3) 设置定时任务 crontab 语法: * * * * * command minute hour day month week command 其中: minute: 表示分钟,可以是从0到59之间的任何整数。 hour:表示小时,可以是从0到23之间的任何整数。 day:表示日期,可以是从1到31之间的任何整数。 month:表示月份,可以是从1到12之间的任何整数。 week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。 command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。 例如: 57 21 * * * /bin/sh /bash/script/back_mysql.sh
本文出自 “坚持梦想” 博客,转载请与作者联系!
以上是关于mysql 备份脚本以及定时任务的主要内容,如果未能解决你的问题,请参考以下文章