虽然PXC支持在线增加群集节点,但是目前尚未解决wsrep_sst_method=xtrabackup 或wsrep_sst_method=mysqldump时报错的问题,因此尝试手动完成xtrabackup备份和恢复并添加到群集节点。

场景:

有三台干净的CentOS 6的服务器,IP配置为:192.168.166.169,192.168.166.170,192.168.166.171,准备搭建三节点的Percona XtraDB Cluster,目前192.168.166.169,192.168.166.170已加入到群集,准备将192.168.166.171加入到群集中。

192.168.166.169的wsrep_node_name为pxc1,

192.168.166.170的wsrep_node_name为pxc2,

192.168.166.171的wsrep_node_name为pxc3,

============================================

首先在服务器192.168.166.170上备份,使用galera-info来获取备份时的群集序列号:

/usr/bin/innobackupex --defaults-file="/etc/my.cnf" \
--host="localhost" \
--port= \
--user="sstuser" \
--password="s3cret" \
--socket="/var/lib/mysql/mysql.sock" \
--galera-info \
"/pxc_backup/"

将备份复制到192.168.166.171上,切换到备份目录下,执行恢复:

innobackupex --apply-log ./

恢复完成后,可以看到一个xtrabackup_galera_info,该文件中存放备份时的群集序列号

本次demo中xtrabackup_galera_info数据为:

5f3c567e-033f-11e6-a67c-67e2991c9c84:13

从192.168.166.169或192.168.166.170复制文件grastate.dat到192.168.166.171上

默认rpm安装下,grastate.dat路径为:/var/lib/mysql

然后在192.168.166.171上修改grastate.dat文件中的值为xtrabackup_galera_info数据:

# GALERA saved state
version: 2.1
uuid: 5f3c567e-033f-11e6-a67c-67e2991c9c84
seqno: -
safe_to_bootstrap:

修改文件mysql数据目录的权限

chown -R mysql:mysql /var/lib/mysql

编辑mysql配置文件/etc/my.cnf

然后分别到192.168.166.169和192.168.166.170上执行下面命令来查看各节点上保存的最小序列号:

show global status like 'wsrep_local_cached_downto';

假设192.168.166.170上的最小序列号低于xtrabackup_galera_info数据,则证明可以利用192.168.166.170来做增量同步,而192.168.166.170的wsrep_node_name为pxc2,因此启动pxc3节点的脚本为:

service mysql start --wsrep_sst_donor=pxc2

启动成功:

ERROR! MySQL (Percona XtraDB Cluster) is not running, but lock file (/var/lock/subsys/mysql) exists
Starting MySQL (Percona XtraDB Cluster).... SUCCESS!

登录MySQL查看状态:

show status like 'wsrep%';

插入测试数据验证群集同步是否正常。

============================================

赶班车,走人,周末快乐

MySQL--Percona-XtraDB-Cluster使用xtrabackup来添加节点的更多相关文章

  1. 使用percona xtradb cluster的IST方式添加新节点

    使用percona xtradb cluster的IST(Incremental State Transfer)特性添加新节点,防止新节点加入时使用SST(State SnapShop Transfe ...

  2. mysql高可用之PXC(Percona XtraDB Cluster)

    简介 Percona XtraDB Cluster是MySQL高可用性和可扩展性的解决方案,Percona XtraDB Cluster提供的特性如下: 1).同步复制,事务要么在所有节点提交或不提交 ...

  3. MySQL高可用方案-PXC(Percona XtraDB Cluster)环境部署详解

    MySQL高可用方案-PXC(Percona XtraDB Cluster)环境部署详解 Percona XtraDB Cluster简称PXC.Percona Xtradb Cluster的实现是在 ...

  4. Percona XtraDB Cluster

    简介 Percona XtraDB Cluster是MySQL高可用性和可扩展性的解决方案,Percona XtraDB Cluster提供的特性如下: 1.同步复制,事务要么在所有节点提交或不提交. ...

  5. Percona XtraDB Cluster简易入门 - 安装篇

    说明 Percona XtraDB Cluster(简称PXC),是由percona公司推出的mysql集群解决方案.特点是每个节点都能进行读写,且都保存全量的数据.也就是说在任何一个节点进行写入操作 ...

  6. Percona XtraDB Cluster vs Galera Cluster vs MySQL Group Replication

    Percona XtraDB Cluster vs Galera Cluster vs MySQL Group Replication Overview Galera Cluster 由 Coders ...

  7. 搭建高可用mysql系列(1)-- Percona XtraDB Cluster介绍

    Percona XtraDB Cluster (下文简称PXC)是一个开源的mysql 高可用解决方案.它将Percona Server和Percona XtraBackup与Galera库集成在一起 ...

  8. Percona XtraDB Cluster(PXC) Mysql 集群

    Percona XtraDB Cluster(PXC)   ---原理介绍篇         目录 一.简介 1 二.优缺点 2 三.区别/局限性 3 四. PXC复制原理 4 五. 服务解释 5   ...

  9. 搭建高可用mysql系列(2)-- Percona XtraDB Cluster 安装

    本文主要介绍在 centos 下 Percona XtraDB Cluster(下文简称PXC) 的安装, 个人的系统版本信息如下: [root@c2-d09 worker]# more /etc/r ...

随机推荐

  1. PS制作纸质复古野外露营插画分享

    经常有人说一些复古风,就觉得蛮难,其实制作过程其实没有想象中复杂,从1850年到2017年,通过这160多年里的平面设计,给我们的作品添加上一些新鲜的灵感和活力,本次教程就来教大家用PS做出耐看的纸质 ...

  2. c sharp dll

    1. generate dll building .cs file, for example: myDll.cs using System; using System.Collections.Gene ...

  3. Spring PropertyResolver 占位符解析(二)源码分析

    Spring PropertyResolver 占位符解析(二)源码分析 Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) ...

  4. fastcgi协议解析(nginx)

    请求NGINX ->[ {(post data) +> (NGX_HTTP_FASTCGI_STDIN)} * N +> {(environment variables) +> ...

  5. web项目目录结构

    eclipse web项目目录结构 按照 Java EE 规范的规定,一个典型的 Web 应用程序有四个部分: 1.  公开目录 ; 2. WEB-INF/web.xml 文件,发布描述符(必选) ; ...

  6. Python 递归函数 详解

    Python 递归函数 详解   在函数内调用当前函数本身的函数就是递归函数   下面是一个递归函数的实例: 第一次接触递归函数的人,都会被它调用本身而搞得晕头转向,而且看上面的函数调用,得到的结果会 ...

  7. Django 文章标签功能

    使用第三方框架django-taggit为模型添加标签功能,此模块是一个可复用的应用 首先安装 https://github.com/alex/django-taggit 这是项目主页 pip ins ...

  8. 使用jackson美化输出json/xml

    转载:http://www.cnblogs.com/xiwang/ 如何使用jackson美化输出json/xml 1.美化POJO序列化xml 下面将POJO列化为xml并打印. Person pe ...

  9. Sharing Code Between Silverlight and Win8 app metro

    这里讲得很详细了: Sharing Code between Windows Phone 8 and Windows 8 Applications http://msdn.microsoft.com/ ...

  10. DevOps:从理念到实施

    转载自:http://os.51cto.com/art/201404/436794.htm DevOps这个新理念的出现,是为了应对IT环境中普遍面临的一些挑战.开发团队要求的不断满足新的客户需求,并 ...