Linux实现数据库定时备份方式

来自:网络
时间:2024-06-08
阅读:

一、创建备份文件存放目录

mkdir databasebackup

二、创建数据存放目录

mkdir sql

三、创建一个脚本

将备份的执行命令写在脚本中:

mkdir backup.sh

Linux实现数据库定时备份方式

执行命令: 

#!/bin/sh
#所有数据库备份,备份指定数据库时,将--all-databases修改为指定数据库名称
mysqldump -u[username] -p[password] --all-databases > /databasebackup/sql/`date +%F-%H-%M-%S`.sql

Linux实现数据库定时备份方式

四、输入crontab -e编写定时任务

【注意最后一个*后面至少有两个空格】

#每天16:30定时执行
30 16 * * *  sh /databasebackup/backup.sh

Linux实现数据库定时备份方式

----------------------定时备份操作完成----------------------

基础命令:

  • crontab -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)
  • crontab -r : 删除目前的时程表
  • crontab -l : 列出目前的时程表

时间格式:

f1 f2 f3 f4 f5 program

其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程序。

当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其余类推

当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其余类推

当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其余类推

当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其余类推

*    *    *    *    *
-    -    -    -    -
|    |    |    |    |
|    |    |    |    +----- 星期中星期几 (0 - 6) (星期天 为0)
|    |    |    +---------- 月份 (1 - 12) 
|    |    +--------------- 一个月中的第几天 (1 - 31)
|    +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

返回顶部
顶部