Linux数据库热备份mysqlhotcopy笔记

2014-11-24 17:29:21 · 作者: · 浏览: 0

Linux主机建立MySQL数据库备份所需条件


[1] 建立自动备份脚本


在这里,为了使数据库备份和恢复的符合我们的实际要求,用一段符合要求的Shell脚本来实现整个备份过程的自动化。


[root@localhost ~]# vi mysql-backup.sh  ← 建立数据库自动备份脚本,如下:


#!/bin/bash


PATH=/usr/local/sbin:/usr/bin:/bin


# The Directory of Backup
BACKDIR=/backup/mysql


# The Password of MySQL
ROOTPASS=********  ← 将星号替换成MySQL的root密码


# Remake the Directory of Backup
rm -rf $BACKDIR
mkdir -p $BACKDIR


# Get the Name of Database
DBLIST=`ls -p /var/lib/mysql | grep / | tr -d /`


# Backup with Database
for dbname in $DBLIST
do
mysqlhotcopy $dbname -u root -p $ROOTPASS $BACKDIR | logger -t mysqlhotcopy
done


[2] 运行数据库自动备份脚本


[root@localhost ~]# chmod 700 mysql-backup.sh  ← 改变脚本属性,让其只能让root用户执行


[root@localhost ~]# ./mysql-backup.sh   ← 运行脚本


[root@localhost ~]# ls -l /backup/mysql/   ← 确认一下是否备份成功


total 8
drwxr-x--- 2 mysql mysql 4096 Sep 1 16:54 mysql   ← 已成功备份到/backup/mysql目录中