1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/bash
my_user="root" #登录MySQL的用户名
my_pass="Bang1234!!" #用户名密码
my_db1="semiconductor" #你需要备份的数据库名称

bf_dir="/home/administrator/mysql/" #备份文件的保存位置
bf_time="$(date +%Y%m%d-%H%M)" #备份的时间
NAME_1="$my_db1-$bf_time" #备份文件的名称加时间

cd $bf_dir #切换到目录

#mysqldump备份的格式:mysqldump [选项] --databases 库名 > /备份路径/备份文件的名称
mysqldump -u"$my_user" -p"$my_pass" --databases "$my_db1" >"$NAME_1".sql

#使用tar打包备份 --remove打包并删除源文件
#&>:将正确信息或错误信息放到
tar zcf "$NAME_1".tar.gz "$NAME_1".sql --remove &> /dev/null

backup.sh

安装 crontab 工具

1
2
3
4
# 编辑定时任务
sudo crontab -e
# 配置定时时间备份
0 8 * * * /bin/bash /home/user/script.sh