今天给大家分享一下如何在Linux下实现MYSQl数据库的定时备份。
前提需要保证你的Linux服务器已经安装了MYSQl数据库服务。
1、创建shell脚本
vim backupdb.sh
创建脚本内容如下:
#!/bin/sh
db_user="root"
db_passwd="123456"
db_name="userdb"
name="$(date +"%Y%m%d%H%M%S")"
/usr/bin/mysqldump -u$db_user -p$db_passwd $db_name >>/home/backup/$name.sql
说明:
/usr/bin/mysqldump :mysql数据库安装目录下的mysqldump备份工具路径
dbname :需要备份的数据库名字
/home/backup/$name.sql :备份文件输出位置,可以根据情况自行设定
2、给shell脚本添加执行权限
chmod +x backupdb.sh
3、给脚本添加定时任务
crontab -e
输入上一行命名进入编辑定时任务,最后添加如下内容
00 01 * * * /bin/sh /usr/local/mysql/backupdb.sh
上面定时任务意思是每天凌晨1点会执行自动备份脚本,进行MYSQl数据库的定时备份。
crontab文件的说明:
用户创建的crontab文件中,每一行都代表一项定时任务,每行的每个字段代表一项设置,它的格式每行共分为六个字段,前五段是时间设定字段,第六段是要执行的命令字段。
格式如下:minute hour day month week command
参数说明:
minute: 表示分钟,可以是从0到59之间的任何整数。
hour:表示小时,可以是从0到23之间的任何整数。
day:表示日期,可以是从1到31之间的任何整数。
month:表示月份,可以是从1到12之间的任何整数。
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
command:要执行的命令,可以是Linux系统命令,也可以是自己编写的脚本文件。