搜索
查看: 2224|回复: 0

定时备份MySql数据

[复制链接]

150

主题

245

帖子

532

积分

高级会员

中国黑客

Rank: 4

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

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

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

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


使用mysqldump工具定时备份

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

vim backup.sh

写入命令:
 #!/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

保存之后,记得给脚本授权
 chmod 755 backup.sh

如需手动备份,执行:

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

开启定时备份任务
 crontab -e

加入定时任务

# 每晚的5:00执行备份
 0 5 * * * 脚本所在目录/back.sh

加入定时任务后 最好重启一下crond服务
 service crond restart
回复

使用道具 举报

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

本版积分规则

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