shell脚本系列---自动备份数据库数据

Posted 少年攻城狮灬

tags:

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

1.使用if语句,手写自动备份数据库数据脚本。(粘贴的时候把”//“后面的内容去掉)

vi mysql_back.sh

#!/bin/sh
#auto backup mysql
#wugk 2012-12-12
#Define PATH 定义变量
BAKDIR=/data/backup/mysql/`date +%Y-%m-%d` //备份到哪里,目标目录位置
MYSQLDB=webapp //修改数据库名称为你要备份的库名
MYSQLPW=123456 //用户密码
MYSQLUSR=backup //用户名
MYSQLCMD=/usr/bin/mysqldump
MYSQLDOCKERID=b3a852194e9c
#must use root user run scripts 必须使用 root 用户运行,$UID 为系统变量 
if [ $UID -ne 0 ];then
  echo This script must use the root user ! ! !
  sleep 2
  exit 0
fi
#Define DIR and mkdir DIR 判断目录是否存在,不存在则新建
if [ ! -d $BAKDIR ];then
  mkdir -p $BAKDIR
else
  echo This is $BAKDIR exists....
fi
#Use mysqldump backup mysql 使用 mysqldump 备份数据库
#注掉的命令适用于安装在物理机中的mysql
# $MYSQLCMD -u$MYSQLUSR -p$MYSQLPW -d $MYSQLDB >$BAKDIR/$MYSQLDB.sql
docker exec -i $MYSQLDOCKERID $MYSQLCMD -u$MYSQLUSR -p$MYSQLPW -d $MYSQLDB >$BAKDIR/$MYSQLDB.sql
if [ $? -eq 0 ];then   
  echo "The mysql backup successfully"
else   
  echo "The mysql backup failed"
fi

 

2.若用户没有备份权限,则先授权

grant all on webapp.* to backup@localhost identified by "123456";

shell脚本系列---【自动备份数据库数据】_数据库

 

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

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

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

shell脚本自动备份数据库

Oracle数据库RMAN的自动备份脚本简介

用shell脚本自动化备份数据库

shell脚本 每天定时进行自动备份实战脚本~~~