优点:
1.准同步复制
2.多个可同时读写节点,可实现写扩展,较分片方案更进一步
3.自动节点管理
4.数据严格一致
5.服务高可用
缺点:
1.只支持innodb引擎
2.所有表都要有主键
3.所有的写操作都将发生在所有节点上,存在写扩大问题
4.加入新节点,开销大。需要复制完整的数据。

node1 172.17.20.127
node2 172.17.20.128
node3 172.17.20.129

安装相关yum源

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -ivh https://www.percona.com/redir/downloads/percona-release/redhat/latest/percona-release-0.1-4.noarch.rpm

安装pxc

yum -y install Percona-XtraDB-Cluster-server Percona-XtraDB-Cluster-client Percona-XtraDB-Cluster-shared percona-xtrabackup-

修改/etc/my.cnf配置文件,其他两台节点需要修改server_id和wsrep_node_address

[mysqld]
server_id=127 #其他节点需要修改
datadir=/data/mysql
socket=/data//mysql/mysql.sock
pid_file=/var/lib/mysql/mysql.pid
user=mysql
port=
default_storage_engine=InnoDB
character_set_server=utf8
log-error=/var/lib/mysql/mysql-error.log
slow_query_log=
slow_query_log_file=/var/lib/mysql/mysql-slow.log #INNODB/XtraDB
innodb_buffer_pool_size=
innodb_log_file_size= #PXC
wsrep_provider=/usr/lib64/libgalera_smm.so
wsrep_cluster_address=gcomm://172.17.20.127,172.17.20.128,172.17.20.129
binlog_format=ROW
innodb_autoinc_lock_mode=
wsrep_node_address=172.17.20.127 #其他节点需要修改
wsrep_sst_method=xtrabackup-v2  #同步工具
wsrep_cluster_name=my_mysql_cluster
wsrep_sst_auth="sstuser:s3cret"  #SST连接的用户名和密码

创建数据存储目录

mkdir -p /data/mysql/
chown mysql.mysql /data/mysql/

在node1启动PXC服务

/etc/init.d/mysql bootstrap-pxc   #成功后密码在日志文件里查到
SET PASSWORD = PASSWORD('123qwe'); #登陆MySQL修改密码。

在node1MySQL中创建SST同步用户

GRANT PROCESS,RELOAD,LOCK TABLES,REPLICATION CLIENT ON *.* TO 'sstuser'@'%' IDENTIFIED BY 's3cret';
flush privileges;
  • State Snapshot Transfer 是可以让one node (donor) 通过数据拷贝升级至joining node (joiner)。
    一个新节点加入至集群中,需要同步数据,那么SST可以传输数据,让新节点成为集群的一部分。
    SST的三个有效方法:mysqldump, rsync andxtrabackup。不过多解释,目前最好用的是xtrabackup

在node2,node3启动MySQL服务

/etc/init.d/mysql start

查看集群状态

show status like 'wsrep%'; 

然后测试数据写入和查询

Percona XtraDB Cluster 5.7安装配置的更多相关文章

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

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

  2. Percona XtraDB Cluster(PXC) -集群环境安装

    Percona XtraDB Cluster(PXC)   ---服务安装篇   1.测试环境搭建: Ip 角色 OS PXC-version 172.16.40.201 Node1 Redhat/C ...

  3. PXC(Percona XtraDB Cluster)集群的安装与配置

    Percona XtraDB Cluster是针对MySQL用户的高可用性和扩展性解决方案,基于Percona Server .其包括了Write Set REPlication补丁,使用Galera ...

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

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

  5. docker1.12 安装pxc(Percona XtraDB Cluster )测试

    docker1.12 安装pxc(Percona XtraDB Cluster )测试

  6. 如何搭建Percona XtraDB Cluster集群

    一.环境准备 主机IP                     主机名               操作系统版本     PXC 192.168.244.146     node1           ...

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

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

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

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

  9. PXC5.7(Percona XtraDB Cluster)+HAproxy+Keepalived 集群部署

    Percona-XtraDB-Cluster+Haproxy 搭建集群环境 环境准备及服务器信息: 配置防火墙 firewall-cmd --add-port=3306/tcp --permanent ...

随机推荐

  1. FTP FileZilla Server 本地加密C# 实现

    最近公司要做一个资料管理模块,因系统是C/S架构,原来小文件都是直接使用7Z压缩后保存到SQL Server数据库 而资料管理模块也就是文件上传,下载加权限管理,考虑文件较多,还可能比较大,所以打算在 ...

  2. CSS设计模式之三权分立模式篇 ( 转)

    转自 海玉的博客 市面上我们常常会看到各种各样的设计模式书籍,Java设计模式.C#设计模式.Ruby设计模式等等.在众多的语言设计模式中我唯独找不到关于CSS设计模式的资料,即使在网上找到类似内容, ...

  3. 洛谷P1970 花匠(dp)

    题意 题目链接 Sol 直接用\(f[i][0/1]\)表示到第\(i\)个位置,该位置是以上升结尾还是以下降结尾 转移的时候只需枚举前一个即可 #include<cstdio> #inc ...

  4. iOS内存泄露统计

    1.Value stored to 'xxx' during its initialization is never read // 对象声明之后根本就没有使用 只有赋值 2.Value stored ...

  5. 通知:即日起本博客暂停更新,请移步至yanxin8.com获取最新文章

    通知:即日起本博客暂停更新,请移步至yanxin8.com与博主交流及获取最新文章

  6. 2015年创新工场校园招聘软件研发岗位笔试题目——矩阵旋转

    题目要求:给出一个NxN的矩阵,写出程序将该矩阵进行顺时针旋转90度 // matrixrotation.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h ...

  7. 关于ButterKnife 设置全局配置

    先在项目的根目录的build.grade添加:classpath'com.neenbedankt.gradle.plugins:android-apt:1.8'  然后在app build.grade ...

  8. 【起航计划ObjC 001】印第安老斑鸠ObjC的幻想 ---- Ubuntu下安装并使用Obj-C

    如何在最新版本的 Ubuntu下(14.10)来安装.编译Objective-C? Ubuntu已经有了对Objective-C的编译器(gobjc)的安装,因此安装gobjc的步骤可省,如果你用的U ...

  9. java实现12306的45分钟内支付,45分钟后取消订单功能?

    java实现12306的45分钟内支付,45分钟后取消订单功能? - 回答作者: 匿名用户 https://zhihu.com/question/27254071/answer/35948645

  10. 转:一个优秀windows C++程序员的知识体系

    转自:http://www.cppblog.com/weiym/archive/2012/06/10/178287.html.根据自身的经历,觉得作者总结的很好. 思考一个优秀windows C++ ...