一. 安装说明

  安装XtraBackup 2.4 版本有三种方式:

   (1) 存储库安装Percona XtraBackup(推荐)

  (2 )下载的rpm或apt包安装Percona XtraBackup。

   (3) 源代码编译和安装。
  Percona为yum (Red Hat、CentOS和Amazon Linux AMI的RPM包)和apt (Ubuntu和Debian的.deb包)提供存储库,用于Percona Server、Percona XtraBackup和Percona Toolkit等软件。存储库安装将得通过操作系统的包管理器,轻松地安装和更新软件及其依赖项。这是推荐的安装方法。

二. 安装演示(centos 7)

  使用 yum安装工具。 yum下载的默认文件包路径存放在/var/cache/yum目录下。

  步骤1:切换到root用户下,使用yum下载安装Percona 存储库,代码如下:

    [root@hsr /]# yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm

  完装完成后,如下图所示:
    
  步骤2: 验证yum是否安装成功。下面使用yum list输出所有yum安装的工具,并用grep来过滤,注意grep后面不要写错过滤条件。查询命令如下:

    [root@hsr /]# yum list | grep percona-xtrabackup

    
  步骤3:安装 percona-xtrabackup-24

   [root@hsr /]# yum install percona-xtrabackup-

    

  最后简单查看xtrabackup安装路径和文档

-- 安装路径
[root@hsr /]# type xtrabackup
xtrabackup 已被哈希 (/usr/bin/xtrabackup)
-- 文档
[root@hsr /]# xtrabackup --help
xtrabackup: recognized server arguments: --server-id= --log_bin=/var/lib/mysql/mysql-bin --datadir=/usr/local/mysql/data
xtrabackup: recognized client arguments: --server-id= --log_bin=/var/lib/mysql/mysql-bin --datadir=/usr/local/mysql/data
xtrabackup version 2.4. based on MySQL server 5.7. Linux (x86_64) (revision id: 170eb8c)
Open source backup tool for InnoDB and XtraDB
-- 使用方法如下:
Usage: [xtrabackup [--defaults-file=#] --backup | xtrabackup [--defaults-file=#] --prepare] [OPTIONS]
-- 默认按照以下路径读取mysql的my.cnf文件
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
最后[OPTIONS]参数太多,这篇就不在列出。

三 . 用户权限

  3.1 连接服务和权限概述
    Percona XtraBackup需要能够连接到数据库服务器,并创建备份、在某些场景中进行准备和恢复备份时,在服务器的datadir上执行操作。为了做到这一点,必须满足其执行的特权和权限要求。

    无论使用xtrabackup还是innobackupex,都会涉及两个角色。调用程序的用户(系统用户)和在数据库服务器中执行操作的用户(数据库用户)。请注意,这些用户位于不同的位置,尽管他们的用户名可能相同。

  3.2 系统用户权限

    执行 innobackupex/xtrabackup 命令的Linux用户需要对mysql的datadir和保存备份的目录(mysql的环境变量tmpdir)有读写执行权限。查看datadir目录权限,使用mysql,root系统用户,查看datadir目录/usr/local/mysql/data。下图显示有读写执行权限,如果没有就需要设置。
    
    备份目录权限xtrabackup 备份选项target_dir,可以在备份时使用命令行指定选项,也可以在my.cnf中配置好target_dir,后面备份操作时再配置。

 3.3  数据库用户权限
    连接工具可以是用innobackupex或xtrabackup。innobackupex只是一个软链接指向了xtrabackup。用法一样,后面就只讲xtrabackup。innobackupex的软连接如下图所示:
    
    用于连接到服务器的数据库用户及其密码由xtrabackup—user和xtrabackup—password选项指定。这里user用户是指mysql.user表中的用户,需要一些基本的权限来执行备份过程。数据库用户需要备份表或数据库需要以下权限:

(1) RELOAD重新加载和LOCK TABLES锁定表(除非指定了-no-lock选项)二个权限,LOCK TABLES是为了在开始复制文件之前使用READ LOCK读锁, 在使用备份锁时,用于备份的锁表和用于备份的锁BINLOG需要此特权。RELOAD是为了刷新引擎日志来FLUSH TALBES刷新表。

(2) REPLICATION CLIENT复制权限,是客户端为了获得二进制日志位置。

(3) TABLESPACE表空间权限,创建表空间以导入表(参见恢复各个表)。

(4) PROCESS进程权限,是为了运行SHOW ENGINE INNODB STATUS(这是强制性的),并可选地看到所有线程运行在服务器上(见改进的嵌入式表与读锁处理)。

(5) SUPER权限,为了在复制环境中启动/停止从线程,使用XtraDB更改后的页面跟踪来进行增量备份和改进的具有读锁处理的刷新表。

(6) CREATE privilege特权 是为了创建PERCONA_SCHEMA.xtrabackup_history库和表。

(7 )INSERT privilege特权,是为了添加历史记录PERCONA_SCHEMA.xtrabackup_history 表。

(8) select privilege特权,是为了使用innobackupex—incremental-history-name或innobackupex—incremental-history-uuid,以便特性在PERCONA_SCHEMA.xtrabackup_history 表中查找innodb_to_lsn值。

-- 下面一个案例是:创建一个数据库用户,对于完全备份使用必需的最小特权。
mysql> CREATE USER 'bkpuser'@'localhost' IDENTIFIED BY 's3cret';
mysql> GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO
'bkpuser'@'localhost';
mysql> FLUSH PRIVILEGES;

四.配置 xtrabackup
  所有的xtrabackup配置都是通过选项完成的,其行为与标准的MySQL程序选项完全相同:它们可以通过命令行指定,也可以通过/etc/my.cnf这样的文件指定。
  xtrabackup二进制文件按照顺序从任何配置文件中读取[mysqld]和[xtrabackup]部分。这样它就可以从您现有的MySQL安装中读取它的选项,例如datadir或一些InnoDB选项。如果您想要重写这些内容,只需在[xtrabackup]部分中指定它们,因为它稍后会被读取,所以它会优先。
  如果不需要,您不需要在my.cnf中添加任何配置。您可以简单地在命令行上指定选项。通常,在my.cnf文件的[xtrabackup]部分,您可能会发现唯一方便的地方是target_dir选项,它可以默认放置备份的目录。例如:

[xtrabackup]
target_dir = /data/backups/mysql/

mysql 开发进阶篇系列 45 物理备份与恢复(xtrabackup 安装,用户权限,配置)的更多相关文章

  1. mysql 开发进阶篇系列 47 物理备份与恢复(xtrabackup 的完全备份恢复,恢复后重启失败总结)

    一. 完全备份恢复说明 xtrabackup二进制文件有一个xtrabackup --copy-back选项,它将备份复制到服务器的datadir目录下.下面是通过 --target-dir 指定完全 ...

  2. mysql 开发进阶篇系列 46 物理备份与恢复( xtrabackup的 选项说明,增加备份用户,完全备份案例)

    一. xtrabackup 选项说明 在操作xtrabackup备份与恢复之前,先看下该工具的选项,下面记录了xtrabackup二进制文件的部分命令行选项,后期把常用的选项在补上.点击查看xtrab ...

  3. mysql 开发进阶篇系列 48 物理备份与恢复(xtrabackup 的增量备份与恢复,以及备份总结)

    一.增量备份概述 xtrabackup  和innobackupex  二个工具都支持增量备份,这意味着能复制自上次备份以来更改的数据.可以在每个完整备份之间执行许多增量备份,因此,您可以设置一个备份 ...

  4. mysql 开发进阶篇系列 44 物理备份与恢复( 热备份xtrabackup 工具介绍)

    一.概述 物理备份和恢复又分为冷备份和热备份.与逻辑备份相比,它最大优点是备份和恢复的速度更快.因为物理备份的原理都是基于文件的cp. 1.1 冷备份 冷备份就是停掉数据库服务.这种物理备份一般很少使 ...

  5. mysql 开发进阶篇系列 42 逻辑备份与恢复(mysqldump 的完全恢复)

    一.概述 在作何数据库里,备份与恢复都是非常重要的.好的备份方法和备份策略将会使得数据库中的数据更加高效和安全.对于DBA来说,进行备份或恢复操作时要考虑的因素大概有如下: (1) 确定要备份的表的存 ...

  6. mysql 开发进阶篇系列 43 逻辑备份与恢复(mysqldump 的基于时间和位置的不完全恢复)

    一. 概述 在上篇讲到了逻辑备份,使用mysqldump工具来备份一个库,并使用完全恢复还原了数据库.在结尾也讲到了误操作是不能用完全恢复的.解决办法是:我们需要恢复到误操作之前的状态,然后跳过误操作 ...

  7. mysql 开发进阶篇系列 30 数据库二进制包(安装指定路径,目录介绍)

    一. 指定路径 在上一篇里,二进制包解压后,全部放入在/usr/local/mysql目录下,在安装时指定了基础目录和数据目录, --basedir=/usr/local/mysql --datadi ...

  8. mysql 开发进阶篇系列 29 数据库二进制包安装

    概述 对于二进制安装,优点是可以安装到任何路径下,灵活性好,一台服务器可以安装多个mysql.缺点是已经绎过编译,性能不如源码编译得好,不能灵活定制编译参数.如果用户即不想安装最简单却不够灵活的RPM ...

  9. mysql 开发进阶篇系列 28 数据库二进制包安装(centos系统准备)

    1. centos 7安装工作 对于mysql二进制安装,我这里在使用一台新的centos系统.准备好VMware,Xftp-6.0, Xshell-6.0.在VMware中网络使用桥接模式,分配20 ...

随机推荐

  1. Lucene实现自己的英文空格小写分词器

    看一下继承图,Tokenizer和TokenFilter都是继承于TokenStream,TokenStream继承了AttributeSource package com.lucene.demo.a ...

  2. Python爬虫学习--用Python结合Selenium实现 明日之子节目直播时为自己喜欢的选手自动点赞拉票!!!

    声明:本脚本纯属娱乐,请勿用来非法点赞拉票,任何使用不当造成的后果自行承担. 闲话: 明日之子第二季开始好久了,作者一直再追,特别喜欢里面那个酷酷的小哥-蔡泽明.前两天晋选9大厂牌,采取的是直播的形式 ...

  3. python基础入门之对文件的操作

    **python**文件的操作1.打开文件 打开文件:open(file,mode='r') file:操作文件的路径加文件名 #绝对路径:从根目录开始的 #相对路径:从某个路径开始 mode:操作文 ...

  4. unity中的Culling Mask

    摄像机按层渲染 Camera.cullingMask = 1<<x;//渲染x层 Camera.cullingMask = ~(1<<x);//渲染除去x的所有层 Camera ...

  5. 十分钟带你读懂《增长黑客》zz

    背景 “If you are not growing, then you are dying. ”(如果企业不在增长,那么就是在衰亡!) 这句话适用于企业,也适用于个人.人生毕竟不像企业,是非成败,似 ...

  6. JavaScript 平时记录

    1,JS中的this 见下面例子,注意函数中的函数 中的this指的是window对象了!!! document.addEventListener('click', function (e) { co ...

  7. 高斯混合模型的EM算法

    高斯混合模型的EM算法 混合高斯模型 高斯混合模型的概率分布可以写成多个高斯分布的线形叠加,即 \[ p(\mathbf x) = \sum_{k=1}^{K}\pi_k\mathcal N(\mat ...

  8. 可遇不可求的Question之SQLSERVER触发器不支持多行插入操作篇

    描述: 我们经常遇到 insert table_a select * from table_b 这样的语句, 同时在表table_a中根据每一条新增的SQL语句,通过触发器来触发对应的一系列的后续操作 ...

  9. 玩玩微信公众号Java版之七:自定义微信分享

    前面已经学会了微信网页授权,现在微信网页的功能也可以开展起来啦! 首先,我们先来学习一下分享,如何在自己的页面获取分享接口及让小伙伴来分享呢? 今天的主人公: 微信 JS-SDK, 对应官方链接为:微 ...

  10. La protezione del puntatore laser

    Questo puntatore laser è sempre sufficientemente efficiente per eseguire il test più accurato su qua ...