搜索
查看: 4774|回复: 0

定时备份MySql数据

[复制链接]

152

主题

99

回帖

540

积分

高级会员

中国黑客

积分
540
QQ
发表于 2018-11-4 15:50:03 来自手机 | 显示全部楼层 |阅读模式 来自 甘肃
备份数据使用到MySql自带的一个工具mysqldump

mysqldump用法
[pre]
mysqldump -help
# 参数
Usage: mysqldump [OPTIONS] database [tables]
OR     mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR     mysqldump [OPTIONS] --all-databases [OPTIONS]
BashCopy
--all-databases 备份系统中所有数据库
--databases 指定至少一个数据库的名称 多个数据库名称之间用空格隔开

# 备份某个数据库
mysqldump -u root -p root --databases hoehub > ./hoehub.sql

# 备份全部数据库
mysqldump -u root -p root --all-databases > ./all_databases.sql
[/pre]

使用mysqldump工具定时备份

把备份语句写入脚本,用于定时备份

vim backup.sh

写入命令:
[pre]
#!/bin/sh
# 备份数据
backup_dir=./
time=` date +%Y_%m_%d_%H_%M_%S `
db_user=root
db_pass=www.hoehub.com
db_name=blog
mysqldump --databases $db_name -u $db_user -p $db_pass > $backup_dir$db_name$time.sql
# 记录日志
echo $backup_dir$db_name$time.sql backup successful >> backup.log
[/pre]
保存之后,记得给脚本授权
[pre]
chmod 755 backup.sh
[/pre]
如需手动备份,执行:

./backup.sh
# 执行完成后,当前目录下便多了一个`.sql`文件

开启定时备份任务
[pre]
crontab -e
[/pre]
加入定时任务

# 每晚的5:00执行备份
[pre]
0 5 * * * 脚本所在目录/back.sh
[/pre]
加入定时任务后 最好重启一下crond服务
[pre]
service crond restart
[/pre]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表