mysql定时备份

使用shell脚本对mysql定时备份


一、shell脚本


1.编写shell脚本,本例保存在/usr/sbin目录下,文件名为backupmysql.sh

#!/bin/sh

exec 2>/dev/null   #有时脚本执行后发出警告,大概意思是说不安全

user=root   #连接数据库用户

passwd=123456   #用户密码

database=test   #数据库名

filename=$(date "+%Y%m%d")   #文件名以年月日的形式保存

filepath=/backup   #文件存储路径

mysqlpath=/usr/local/mysql   #数据库安装路径

$mysqlpath/bin/mysqldump -u$user -p$passwd $database >$filepath/$database-$filename.sql  #以日期为文件名,将指定数据库备份到指定目录下

注:确保备份文件存储路径有效

        本例备份test库,以年月日+库名test+.sql的形式为文件名,保存在/backup目录下


2.赋予脚本执行权限

[root@andim ~]# chmod u+x /usr/sbin/backupmysql.sh


二、定时执行


1.设置定时任务(方法一)

[root@andim ~]# crontab -e

键盘输入i在 vi模式下加入一下内容

30 3 * * * /usr/sbin/backupmysql.sh

前五个参数分别代表【分钟,小时,天,星期,月】,最后一个参数为要执行的命令

注:以上内容代表root用户每天凌晨3:30执行/usr/local下的backupmysql.sh

1.设置定时任务(方法二)

[root@andim ~]# vi /etc/crontab

在最后一行插入以下内容

30 3 * * * username /usr/sbin/backupmysql.sh

前五个参数分别代表【分钟,小时,天,星期,月】,后面两个参数分别为执行者(username为已有用户的用户名)和执行的命令(执行/usr/sbin/目录下的backupmysql.sh脚本)


2.重启crontab服务(需要root权限)

[root@andim ~]# service crond restart

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值