#如果数据量比较小,而且服务器内存比较大,不需要压缩
#!/bin/bash
mysql -uUserName -pPassword DatabaseName >需要备份到的目录/bkdatabase/DatabaseName_$(date +%Y%m%d_%H%M%S).sql
------------------------------------------------------
#需要压缩的
#!/bin/bash
mysql -uUserName -pPassword DatabaseName | gzip >需要备份到的目录/bkdatabase/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz
crontab -e
#每天凌晨两点执行一次
0 2 * * * /脚本目录/脚本名称.sh
一、前言
1、本文目标
实现数据库全量备份
实现定时执行备份
实现定时清理7天之前的备份
2、环境信息
image
二、备份
目录准备
mkdir /mysql
mkdir /mysql/backup
mkdir /mysql/backup/scripts
mkdir /mysql/backup/files
mkdir /mysql/backup/logs
备份脚本
新建脚本
vi /mysql/backup/scripts/backup_full.sh
脚本内容
#!/bin/bash
#备份目录
BACKUP_ROOT=/mysql/backup
BACKUP_FILEDIR=$BACKUP_ROOT/files
BACKUP_LOGDIR=$BACKUP_ROOT/logs
#当前日期
DATE=$(date +%Y%m%d)
######备份######
#查询所有数据库
#-uroot -p123456表示使用root账号执行命令,且root账号的密码为:123456
DATABASES=$(mysql -uroot -p123456 -e "show databases" | grep -Ev "Database|sys|information_schema")
#DATABASES=$(mysql -uroot -p123456 -e "SEL