## Shell脚本
运行:bash mysql_backup.sh 脚本路径:/cyfc/BackUp/shell/mysql_backup.sh
<pre class="wp-block-code">```
#!/bin/bash
# date: 2021-03-23
# auth: 张威
# 脚本作用: 本机备份+挂载盘备份
echo =========开始备份数据库=========
#定义:备份文件后缀时间
TIME=_` date +%Y_%m_%d_%H_%M `
DATE=` date +%Y-%m-%d `
#格式:备份文件夹 + 当天日期
BaseUrl=/cyfc/BackUp
backupdir=$BaseUrl/$DATE
mysql_BaseUrl=/www/server/mysql/bin/
#check是否有这个文件夹
if [ ! -d $backupdir ];then
mkdir $backupdir
echo =========新建今日备份文件夹$backupdir=========
else
echo =========文件夹已存在继续执行命令=========
fi
#需要备份的数据库名称
db_arr=(cyfccph cyfccph_test cyfcportal cyfcportal_test)
#循环备份
for db_name in ${db_arr[*]}
do
echo ============================
echo ☆正在备份数据库:$db_name
echo .......
echo .......
dumpFile=$db_name$TIME.sql.gz
mysqldump $db_name | gzip > $backupdir/$dumpFile
echo ★数据库:$db_name备份完成!
echo ============================
done
echo =========本地备份完成!=========
#多备一份到外部盘
echo =========开始备份到挂载盘上=========
echo .......
#挂载盘路径
Share_Disk_BaseUrl=/mnt/37001_Share/backup/mysql_backup
#粘一份过去
cp -r $backupdir $Share_Disk_BaseUrl
echo =========挂载盘备份完成=========
#删除3天前备份
echo =========删除3天前备份=========
find $BaseUrl -mtime +3 -type d | xargs rm -f
## 加入定时计划
安装crontab
检查服务状态:service crond status
重启服务(修改计划后):service crond restart
### 编辑计划
```
输入命令:crontab -e
```
```
```
```
脚本:30 3 * * * /cyfc/BackUp/shell/mysql_backup.sh >> /cyfc/BackUp/shell/mysql_backup.log 2>&1
#分钟(0-59) 小时(0-23) 日(1-31) 月(1-12) 星期(0天-6六)
30 3 * * *
#脚本路径
/cyfc/BackUp/shell/mysql_backup.sh >>
#日志输出路径
/cyfc/BackUp/shell/mysql_backup.log
#2>&1的意思就是将标准错误也输出到标准输出当中(白话:错的也输出到对的里,不影响脚本执行)
2>&1
```
```
https://blog.csdn.net/sinat_25873421/article/details/80340049
备份路径,当天的备份存存储在文件夹分别是