MySQL数据库的定时备份

时间:2024-05-02 09:05:08

1. 创建shell脚本

   vim backupdb.sh
创建脚本内容如下:
#!/bin/sh
db_user="root"
db_passwd=""
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
输入上一行命名进行编辑定时任务,最后添加如下内容
* * * /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系统命令,也可以是自己编写的脚本文件。