一、创建放备份的目录
cd / 进入根目录
mkdir backup 创建备份目录
二、编写脚本
首先进入vim编辑模式
vim backup.sh
添加内容(备份当前所有数据库):
db_user="用户名"
db_password="数据库密码"
db_name="数据库名字"
# the directory for story your backup file.you shall change this dir
backup_dir="/backup"
# date format for backup file (dd-mm-yyyy)
time="$(date +"%Y%m%d%H%M%S")"
#!/bin/bash
mysqldump -u$db_user -p$db_password --all-databases > $backup_dir/sqldata_$time.sql
#!/bin/bash
mysqldump -u$db_user -p$db_password --all-databases | gzip > $backup_dir/$db_name"_"$time.sql.gz
或者(备份某个库):
mysqldump -u "用户名" -p "密码" "库名" > "所放文件夹路径"_$(date +%Y%m%d%H%M%S).sql
三、创建软链接
进入自己mysql目录,创建该目录软链接
ln -fs /usr/local/mysql/bin/mysqldump /usr/bin
ln -fs /usr/local/mysql/bin/mysql /usr/bin
四、赋予该脚本可执行权限
cd /
chmod u+x backup.sh
五、测试脚本是否能正常执行
在根目录下执行该脚本
./backup.sh
出现该报错表示直接输入密码账号信息是不安全的,可以暂时忽略,如果介意可以查阅相关资料。
六、进入备份文件夹查看是否正常备份
此处最好验证一下备份的数据库是否完整
cd /backup
ls
七、安装cron服务
yum -y install crontabs
八、创建定时备份任务
此处和vim使用方法一致,执行以下命令后按i进入编辑模式
crontab -e
设置时间规则,具体可参考cron相关资料
0 2 * * */backup.sh #表示每天凌晨两点进行一次备份