Xtrabackup安装与配置

 

1.      前言

公司环境安装mysql环境备份的过程。两台mysql做日志互相同步,采用的备份方法是,两台数据库服务器单独安装xtrabackup,每天凌晨1点进行全库在线备份。

主要要点如下:

1)       安装xtrabackup包

2)       将hnas的共享文件夹挂载到数据库服务器上

3)       写好备份脚本,就是一句备份命令

4)       建立定时任务,每天凌晨1点钟跑备份脚本,将数据库全备份到hnas上

2.      安装

  • 将xtrabackup-1.6.7-356.rhel6.x86_64.rpm包上传到服务器上

[root@mysqlbak-1 ~]# ls

anaconda-ks.cfg  Documents install.log         Music     Public    Videos

Desktop          Downloads  install.log.syslog  Pictures Templates  xtrabackup-1.6.7-356.rhel6.x86_64.rpm

  • 安装包

[root@mysqlbak-1 ~]# rpm -ivhxtrabackup-1.6.7-356.rhel6.x86_64.rpm

warning:xtrabackup-1.6.7-356.rhel6.x86_64.rpm: Header V4 DSA/SHA1 Signature, key IDcd2efd2a: NOKEY

Preparing...                ###########################################[100%]

  1:xtrabackup            ########################################### [100%]

3.      配置

3.1.    挂载hnas的共享文件夹

  • vi修改/etc/fstab文件

写入到/etc/fstab下面,将hnas的文件夹,挂载到本地的/backup目录下。

  • 建立/backup目录

[root@mysqlbak-1 ~]# mkdir /backup

  • mount目录

[root@mysqlbak-1 ~]# mount –a

4)       df检查是否挂载成功

[root@SZDB02 ~]# df

Filesystem           1K-blocks      Used Available Use% Mounted on

/dev/mapper/VolGroup-LogVol01

                     125712236   3223236 116103132   3% /

tmpfs                  6165220        88  6165132   1% /dev/shm

/dev/sda1               198337     32619   155478  18% /boot

//192.168.11.11/backup/JR_Backup/SZDB02

                     16736845824 130133703043723475520  78% /backup

3.2.    编写备份脚本

  • 在/backup目录下创建script,实际上,就是要把脚本放到hnas上面

[root@mysqlbak-1 ~]# mkdir /backup/script

  • 编写脚本xtrack_full.sh

[root@mysqlbak-1 script]# vi xtrack_full.sh

  • 输入脚本内容

[root@SZDB02 script]# cat xtrack_full.sh

#!/bin/bash

innobackupex --defaults-file=/etc/my.cnf--user=root --password=root /backup/data/full_SZDB02

  • 对脚本进行授权

[root@mysqlbak-1 script]# chmod 777xtrack_full.sh

 

3.3.    启动数据库和配置数据库密码

  • 启动数据库

[root@mysqlbak-1 script]# service mysqldstart

  • 登陆数据库(第一次密码为空),将数据库密码修改成root

[root@mysqlbak-1 script]# mysql-uroot –p

mysql> use mysql

mysql> UPDATE `user` SET`password`=PASSWORD('root') WHERE `User`='root';

mysql> FLUSH PRIVILEGES;

mysql> exit

3.4.    测试备份

  • 执行以下脚本,看任务是否正常备份

[root@mysqlbak-1 script]#./xtrack_full.sh

2)       检查发现备份文件和输出情况

 

最后输出

innobackupex: Backup created indirectory '/backup/2014-12-30_12-07-29'

innobackupex: MySQL binlogposition: filename '', position

141230 12:07:50  innobackupex: completed OK!

 

 

 

目标目录下生产了有备份文件

                           

 

3.5.    配置定时任务

输入crontab  -e,输入下面内容,保存退出

0 1 * * */backup/script/xtrack_full.sh

 

3.6.    结束(附测试环境部署日志)

一台机器上的所有的配置都已经完成,另外的机器部署依此为例,平时注意检查备份生产。测试备份和恢复报告,请见另外《mysql备份和恢复测试》