首頁 >資料庫 >mysql教程 >CentOS下使用mysqlhotcopy定时备份MySQL数据库(MyISAM存储引擎_MySQL

CentOS下使用mysqlhotcopy定时备份MySQL数据库(MyISAM存储引擎_MySQL

WBOY
WBOY原創
2016-06-01 13:35:471108瀏覽

CentOS

bitsCN.com

CentOS下使用mysqlhotcopy定时备份MySQL数据库(MyISAM存储引擎)

 

mysqlhotcopy与mysqldump比较:

 

前者是一个快速文件意义上的COPY,后者是一个数据库端的SQL语句集合。

前者只能运行在数据库目录所在的机器上,后者可以用在远程客户端,不过备份的文件还是保存在服务器上。

相同的地方都是在线执行 LOCK TABLES 以及 UNLOCK TABLES

前者恢复只需要COPY备份文件到源目录覆盖即可,后者需要导入SQL文件到原库中。(source 或 mysql

前者只适用于 MyISAM 引擎,而后则则可同时使用于MyISAM引擎和InodDB引擎.

前者在使用前必须安装perl-DBD-mysql包,而后者则不需要.

 

使用mysqlhotcopy之前需要安装perl-DBI和DBD-mysql:

1

yum -y install perl perl-DBI

Shell脚本如下:

01

# Name:mysqlbackup.sh

02

# PS:MySQL DataBase Backup,Use mysqlhotcopy script.

03

# Last Modify:2008-06-12

04

# 定义变量,请根据具体情况修改

05

# 定义脚本所在目录

06

scriptsDir=`pwd`

07

# 数据库的数据目录

08

dataDir=/usr/local/mysql/var/

09

# 数据备份目录

10

tmpBackupDir=/tmp/mysqlblackup

11

backupDir=/home/backup/mysql

12

# 用来备份数据库的用户名和密码

13

mysqlUser=root

14

mysqlPWD='456123'

15

# 如果临时备份目录存在,清空它,如果不存在则创建它

16

if [[ -e $tmpBackupDir ]]; then

17

        rm -rf $tmpBackupDir/*

18

else

19

        mkdir $tmpBackupDir

20

fi

21

 

22

# 如果备份目录不存在则创建

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn