Linux下备份MySQL数据库的Shell脚本

数据库每天都想备份,手动备份太麻烦而又容易忘记,所以写了一个自动备份MySQL数据库的脚本,加入定时计划中,每天自运运行。

创建Shell脚本代码如下,命名为mysql_dump.sh

#!/bin/bash

if [ "$1" = "" ]  
then  
  echo "database name is not set!"  
else    

  id="root" #用户名
  pwd="123456" #密码
  db=$1 #数据库名字
  backup_path="/home/backup/mysql/$db" #保存备份的位置。

  #timestamp=$(date +%Y-%m-%d_%H-%M-%S)
  timestamp=$(date +%Y%m%d%H%M%S)
  [ ! -d $backup_path ] && mkdir -p $backup_path  #判断备份目录是否存在,不存在时新建目录。
  cd $backup_path

  mysqldump -u$id -p$pwd -S /tmp/mysql.sock $db > $db"_"$timestamp.sql  #备份单个数据库为.sql文件,放到当前位置。

fi

在Linux定时计划crontab中,加入以下代码,每天凌晨3点自动备份emis_system数据库:

0 3 * * * sh /home/shell/mysql_dump.sh emis_system

 

posted @ 2017-07-31 16:25  佐佑时代  阅读(488)  评论(0编辑  收藏  举报