#!/bin/bash
#备份test数据库
/www/server/mysql/bin/mysqldump -uroot -p用户密码 test > /home/backup/test_$(date +"%Y%m%d-%H%M%S").sql
#删除5分钟前的备份的test数据库文件
find /home/backup -mmin +5 -name "test*.sql" -exec rm {} \;
这是 /home/backup/database.sh 其中 test 是mysql数据库名 用户密码是 mysql root用户密码
之后使用 crontab -e 编辑crontab 加入一条
*/1 * * * * /home/backup/database.sh
或者 再宝塔定时任务里加上 shell 脚本
表示每一分钟执行一次database.sh 备份命令 ,会备份一个带数据库名+日期时间的sql文件 ,并删除5分钟前的所有备份,保持最多有5个备份文件存在
通过以下方式 还原数据库
mysql -hhost -uusername -pppassword a<a.sql