1. 新建一个 sh 脚本(可以先建一个 txt 文本,然后改为 sh 文件)。
代码如下:
#!/bin/bash | |
#设置 mysql 备份目录 | |
folder=/**/** | |
cd $folder | |
day=`date +%Y%m%d` | |
rm -rf $day | |
mkdir $day | |
cd $day | |
#数据库服务器 | |
ip=IP地址 | |
#数据库端口号 | |
host=数据库端口 | |
#用户名 | |
user=root | |
#密码 | |
password=数据库root的密码 | |
#要备份的数据库 | |
db=数据库名称 | |
#数据要保留的天数 | |
days=7 | |
mysqldump -h$ip -P$host -u$user -p$password $db> mysql.sql | |
zip backup.sql.zip backup.sql | |
rm backup.sql | |
cd .. | |
day=`date -d "$days days ago" +%Y%m%d` | |
rm -rf $day |
2.linux 的定时任务是由 crond 管理的,插入脚本,定时运行
[root@ecs-7bec-0002 mysql]# crontab -e | |
05 18 * * * /opt/mysqlbakup.sh //脚本路径 | |
~ | |
~ | |
~ | |
~ | |
~ | |
~ | |
-- INSERT -- |
3. 启动 crond 服务,此服务一般是开机启动的
[root@ecs-7bec-0002 mysql]# service crond restart | |
Redirecting to /bin/systemctl restart crond.service | |
[root@ecs-7bec-0002 mysql]# crontab -l // 查看定时任务信息 | |
05 18 * * * /opt/mysqlbakup.sh |
4.mysql 导入 sql 文件,进入到 mysql 执行命令行
source sql文件路径 |