首页 > 代码库 > mysql 备份脚本以及定时任务
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 备份脚本以及定时任务
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。