首页 > 代码库 > MySQL备份脚本

MySQL备份脚本

    MySQL在中小型企业中广泛使用,下面的脚本可用于生产环境中的完全备份。

    备份方案:每天凌晨1点30分进行完全备份,并保留30天的备份数据(可打开二进制日志,用于增量备份和恢复)

    具体步骤如下:

1 在数据库服务器上建立备份用户

mysql> grant select,lock tables on bbs.* to ‘backupmysql‘@‘192.168.154.160‘ identified by ‘backupmysql‘;

mysql>flush privileges;


2 从备份主机中测试数据库备份(MySQL服务器需要开放3306的端口)

mysqldump -ubackupmysql -pbackupmysql -h 192.168.154.162 --databases bbs > bbs.sql


3 编写备份脚本(在备份主机上)

cd  /data/script/

vim mysqlbackup.sh

#!/bin/bash

#Name: backupmysql

#Date: 2017-03-04

#Author:zwj

#Mail:2222222@qq.com

#Function: mysqlbackup

#Version:1.1

MYUSER="backupmysql"

MYPASS="backupmysql"

MYSQLHOST="192.168.154.162"

MYCONN="-u$MYUSER -p$MYPASS -h $MYSQLHOST"

MYDB="bbs"

MYDST="/data/backup/"

MYCMD="/usr/bin/mysqldump"

MYTIME=$(date +%F)

NAME="$MYDB-$MYTIME"

cd $MYDST

$MYCMD $MYCONN --databases $MYDB > $NAME.sql

/bin/tar zcf $NAME.sql.tar.gz $NAME.sql --remove &> /dev/null

find $MYDST -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;


4 设置定时任务

crontab -e

*/30 1 * * * /data/script/mysqlbackup.sh


本文出自 “一万年太久,只争朝夕” 博客,请务必保留此出处http://zengwj1949.blog.51cto.com/10747365/1905534

MySQL备份脚本