mysqldump 备份数据库脚本

Posted rusking

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysqldump 备份数据库脚本相关的知识,希望对你有一定的参考价值。

创建备份数据库脚本mysql_backup.sh,内容如下:

#!/bin/bash

export PATH=/bin:/usr/bin:/usr/local/bin
TODAY=`date +"%d%b%Y"`

################################################################
################## Update below values  ########################

DB_BACKUP_PATH=‘/backup/dbbackup‘  #先创建该目录
MYSQL_HOST=‘localhost‘
MYSQL_PORT=‘3306‘
MYSQL_USER=‘root‘
MYSQL_PASSWORD=‘密码‘
DATABASE_NAME=‘数据库名‘
BACKUP_RETAIN_DAYS=15   ## Number of days to keep local backup copy

#################################################################

mkdir -p ${DB_BACKUP_PATH}/${TODAY}
echo "Backup started for database - ${DATABASE_NAME}"


mysqldump -h ${MYSQL_HOST} 		  -P ${MYSQL_PORT} 		  -u ${MYSQL_USER} 		  -p${MYSQL_PASSWORD} 		  ${DATABASE_NAME} | gzip > ${DB_BACKUP_PATH}/${TODAY}/${DATABASE_NAME}-${TODAY}.sql.gz

if [ $? -eq 0 ]; then
  echo "Database backup successfully completed"
else
  echo "Error found during backup"
fi


##### Remove backups older than {BACKUP_RETAIN_DAYS} days  #####

DBDELDATE=`date +"%d%b%Y" --date="${BACKUP_RETAIN_DAYS} days ago"`

if [ ! -z ${DB_BACKUP_PATH} ]; then
      cd ${DB_BACKUP_PATH}
      if [ ! -z ${DBDELDATE} ] && [ -d ${DBDELDATE} ]; then
            rm -rf ${DBDELDATE}
      fi
fi

### End of script ####

 脚本创建完成之后,需要添加定时任务到crontab里,定时执行该脚本来备份数据库。

以上是关于mysqldump 备份数据库脚本的主要内容,如果未能解决你的问题,请参考以下文章

MySql DUMP 自动备份数据库 Shell 脚本

MySql DUMP 自动备份数据库 Shell 脚本

mysqldump 备份数据库脚本

mysqldump备份指定mysql数据库脚本

MySQL热备份与还原---利用mysqldump---备份脚本

基于mysqldump编写自动全备增备的shell脚本