备份数据使用到MySql
自带的一个工具mysqldump
mysqldump
用法
mysqldump -help
# 参数
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
--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
# 备份数据
backupdir=/data/wwwroot/www.hoehub.com/dataBackup
time=` date +%Y-%m-%d%H%M%S `
db_user=root
db_pass=xx
db_name=db_xx
/usr/local/mysql/bin/mysqldump --databases $db_name -u $db_user -p$db_pass > $backupdir/$db_name-$time.sql
echo $db_name-$time.sql backup successd >> $backupdir/backup.log
如果只想保留7天内的备份,就在脚本末尾添加
find /data/wwwroot/www.hoehub.com/dataBackup/ -name "db_xx-*" -mtime +7 -exec rm -rf {} \;
echo $db_name-$time.sql deleted -mtime +7 successd >> $backupdir/backup.log
保存之后,记得给脚本授权
chmod 755 backup.sh
如需手动备份,执行:
./backup.sh
# 执行完成后,当前目录下便多了一个`.sql`文件
开启定时备份任务
crontab -e
加入定时任务
# 每晚的5:00执行备份
0 5 * * * 脚本所在目录/back.sh
加入定时任务后 最好重启一下crond
服务
service crond restart
how do you know my name?🤣😂
what happened? I don't know you🤔
谢谢分享 ,会一直关注博主的,内容很赞