创建备份 MySQL 数据库的脚本

您可以创建您用于备份 MySQL 数据库的脚本。您不必停止数据库执行备份。您创建用于备份 MySQL 数据库的以下两个脚本:

您可以指定脚本,以便在备份向导的先行/后继脚本设置中的 MySQL 数据库节点上运行。

请按下列步骤操作:

  1. 以 root 用户身份登录备份服务器。
  2. 使用以下代码创建 pre-db-backup-mode.sh 脚本:

    #!/bin/bash#

    dbuser=root

    dbpwd=rootpwd

    lock_mysqldb(){  

    (   

      echo "flush tables with read lock;"

      sleep 5

    ) | mysql -u$dbuser -p$dbpwd ${ARGUMENTS} }

    }

    lock_mysqldb &

    PID="/tmp/mysql-plock.$!"

    touch ${PID}

    注意:按照 MySQL 数据库中定义的内容指定 dbuserdbpwd 变量的值。

  1. 使用以下代码创建 post-db-backup-mode.sh 脚本:

    #!/bin/bash

    killcids(){

    pid="$1"

    cids=`ps -ef|grep ${pid}|awk '{if('$pid'==$3){print $2}}'`

    for cid in ${cids}

    do

      echo ${cid}
      kill -TERM ${cid}

    done

    echo -e "\n"

    }

    mysql_lock_pid=`ls /tmp/mysql-plock.* | awk -F . '{print $2}'`

    [ "$mysql_lock_pid" != "" ] && killcids ${mysql_lock_pid}

    rm -fr /tmp/mysql-plock.*

  1. 为两个脚本提供执行权限。
  2. 将两个脚本放置在以下位置:

    /opt/Arcserve/d2dserver/usr/prepost/

  1. 登录 Arcserve Unified Data Protection Agent for Linux Web 界面。
  2. 打开备份向导,然后导航到“高级”选项卡。
  3. 在“先行/后继脚本设置”选项中,从“拍取快照前”下拉列表中选择 pre-db-backup-mode.sh 脚本文件。
  4. 在“先行/后继脚本设置”选项中,从“拍取快照后”下拉列表中选择 post-db-backup-mode.sh 脚本文件。
  5. 提交备份作业。

    备份作业已提交。

用于备份 MySQL 数据库的脚本已创建。

注意:Arcserve Unified Data Protection Agent for Linux 支持卷级快照。为了确保数据一致性,数据库的所有数据文件必须在一个卷上。

本节包括以下主题: