您的位置:首页 > 数据库 > MySQL

简单mysql数据库备份一例及crontab说明

2013-01-09 17:08 316 查看
测试的是内部一论坛数据库#!/bin/bash
#######################
#                     #
# mysql backup script;#
# created by macchen; #
# date Jan 7 2013     #
#                     #
#######################
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
source /etc/profile

########################variable###################################
USER=root
PASSWORD=123456
DATABASE01=dzbbs
DATABASE02=mysql
DATE=`date +%Y%m%d%H%M`
##########################backup####################################
mysqldump -u$USER -p$PASSWORD  $DATABASE01 > /data/mysqlbk/bbs$DATE.sql
if [ $? -eq 0 ];then
echo "backup $DATABASE01 successed......" >> /data/mysqlbk/sqlback$DATE.log
else
echo "backup failed,please check log......." >> /data/mysqlbk/error$DATE.log
fi
mysqldump -u$USER -p$PASSWORD $DATABASE02 > /data/mysqlbk/mysql$DATE.sql

if [ $? -eq 0 ];then
echo "backup $DATABASE02 successed......" >> /data/mysqlbk/sqlback$DATE.log
else
echo "backup failed,please check log......." >> /data/mysqlbk/error$DATE.log
fi
echo "=============$DATE===============" >> /data/mysqlbk/sqlback$DATE.log
然后扔在crontab中自动执行
[root@www ~]# crontab -l
0 23 * * * /bin/sh /root/backup.sh

==========================crontab的用法及简单说明=================================
crontab -e
PS:此命令默认以当前用户名创建一个任务计划文件,存放在/var/spool/cron下面
执行后会发一封邮件给用户
添加的命令必须以如下格式:

* * * * * command path
PS:前五个字段可以取整数值,指定何时开始工作,第六个域是字符串,即命令字段,
其中包括了crontab调度执行的命令;各个字段之间用spaces和tabs分割。
前5个字段(*)分别表示:

分钟:0-59

小时:1-23

日期:1-31

月份:1-12

星期:0-6(0表示周日)
* ======表示任何时刻
,======表示分割,如第二字段的小时8,12,14 表示第八小时,第十二小时,第十四小时
- ======表示连续的一个时间段,假如第二字段是2-5,表示第二小时至第五小时。
/n =====表示每隔n的单位执行一次,假如第二字段是/2,表示第隔2小时执行一次任务。

43 21 * * *      每天21:43 执行
15 05 * * *    每天05:15 执
0 17 * * *       每天下午17:00 执行
0 17 * * 1       每周一的 17:00 执行
0,10 17 * * 0,2,3 每周日,周二,周三的 17:00和 17:10 执行
0-10 17 1 * *     毎月1日从 17:00到7:10 毎隔1分钟 执行
0 0 1,15 * 1      毎月1日和 15日和 一日的 0:00 执行
42 4 1 * *      毎月1日的 4:42分 执行
0 21 * * 1-6    周一到周六 21:00 执行
0,10,20,30,40,50 * * * * 每隔10分 执行
*/10 * * * *        每隔10分 执行
* 1 * * *         从1:0到1:59 每隔1分钟 执行
0 1 * * *         1:00 执行
0 */1 * * *        毎时0分 每隔1小时 执行
0 * * * *         毎时0分 每隔1小时 执行
2 8-20/3 * * *      8:02,11:02,14:02,17:02,20:02 执行
30 5 1,15 * *       1日 和 15日的 5:30 执行
0 23-7/2,8 * * *   晚上11点到早上8点之间每两个小时和早上八点
0 11 4 * 1-3    每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 4 1 1 *    1月1日早上4点
1 * * * *    每小时(第一分钟)执行/etc/cron.hourly内的脚本
22 4 * * 0    每星期(周日凌晨4:22)执行/etc/cron.weekly内的脚本

[root@www mysqlbk]# ll
总用量 5480
-rw-r--r-- 1 root root 2293297  1月  7 23:00 bbs201301072300.sql
-rw-r--r-- 1 root root 2308778  1月  8 23:00 bbs201301082300.sql
-rw-r--r-- 1 root root  497368  1月  7 23:00 mysql201301072300.sql
-rw-r--r-- 1 root root  497700  1月  8 23:00 mysql201301082300.sql
-rw-r--r-- 1 root root     124  1月  7 23:00 sqlback201301072300.log
-rw-r--r-- 1 root root     124  1月  8 23:00 sqlback201301082300.log


本文出自 “襄阳人家” 博客,请务必保留此出处http://loveroot.blog.51cto.com/3253831/1112726
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: