欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Linux下MySQL定时按日期备份数据

程序员文章站 2024-01-13 09:39:28
...

一、使用mysql内置命令 mysqldump Usage: mysqldump [OPTIONS] database [tables]mysqldump [OPTIONS] --databases [OPTIONS] DB

一、使用mysql内置命令 mysqldump

Usage:
mysqldump [OPTIONS] database [tables]
mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
mysqldump [OPTIONS] --all-databases [OPTIONS]

可以看到能备份全部的数据库,指定的数据库,指定数据库中的表

mysqldump -uUsername -pPassword Database > /var/backup/mysql/database.sql


二、按日期备份

mysqldump -uUsername -pPassword Database > /var/backup/mysql/database-`date +%Y%m%d`.sql

`date +%Y%m%d` 利用了shell的知识,,先执行,得到格式化的日期

vim /var/backup/backup-mysql.sh

把上面的内容存到文件中

chmod +x backup-mysql.sh

加上可执行权限


三、定时备份

使用系统的crontab

crontab -e

# m h dom mon dow command
0 3 * * * /var/backup/backup-mysql.sh


时间的格式是

分 时 日 月 周

上面的例子是指定每天3点备份一次数据库


提高:

当然,还可以加上一些更好的功能,如

备份后的文件压缩一下,这个很简单

只保留最近xx天的备份文件,这个要稍微复杂一点点

使用mysql二进制增量备份……

2012/03/15日更新 【Linux公社 】

以下是shell脚本:

Linux下MySQL定时按日期备份数据