mirror of
https://github.com/dunwu/linux-tutorial.git
synced 2024-04-15 19:55:24 +08:00
40 lines
1.5 KiB
Bash
40 lines
1.5 KiB
Bash
#!/usr/bin/env bash
|
||
|
||
# -----------------------------------------------------------------------------------------------------
|
||
# Mysql 备份脚本
|
||
# 可以通过 crond 服务,设置称为定时执行脚本:
|
||
# (1)执行 crontab -e 编辑定时执行任务,如:59 23 * * * /home/scripts/mysql-backup.sh
|
||
# (2)vi /etc/crontab,编辑 crontab 文件后保存,可以通过 crontab -l 查看
|
||
# @author Zhang Peng
|
||
# -----------------------------------------------------------------------------------------------------
|
||
|
||
# ------------------------------------------------------------------------------ env
|
||
# Mysql Host
|
||
export ENV_MYSQL_HOST="127.0.0.1"
|
||
# Mysql 端口
|
||
export ENV_MYSQL_PORT=3306
|
||
# Mysql 用户名
|
||
export ENV_MYSQL_USERNAME=root
|
||
# Mysql 密码
|
||
export ENV_MYSQL_PASSWORD=root
|
||
# Mysql 备份文件最大数量
|
||
export ENV_BACKUP_MAX_NUM=7
|
||
# 备份模式:备份所有数据库(--all-databases)|备份指定数据库列表
|
||
export ENV_MYSQL_DATABASES=--all-databases
|
||
# 备份路径
|
||
export ENV_MYSQL_BACKUP_DIR=/var/lib/mysql/backup
|
||
# 备份日志路径
|
||
export ENV_LOG_PATH="${ENV_MYSQL_BACKUP_DIR}/mysql-backup.log"
|
||
|
||
# ------------------------------------------------------------------------------ libs
|
||
LINUX_SCRIPTS_LIB_DIR=`dirname ${BASH_SOURCE[0]}`
|
||
if [[ ! -x ${LINUX_SCRIPTS_LIB_DIR}/lib/mysql.sh ]]; then
|
||
echo "${LINUX_SCRIPTS_LIB_DIR}/lib/mysql.sh not exists!"
|
||
exit 1
|
||
fi
|
||
source ${LINUX_SCRIPTS_LIB_DIR}/lib/mysql.sh
|
||
|
||
# ------------------------------------------------------------------------------ main
|
||
# 执行备份方法
|
||
backupMysql
|