Percona-XtraDB-Cluster-57 安装操作记录
一、PXC集群的一些特性
Percona官网服务器位于境外,访问很困难。本次安装使用的是其官网提供的最新版本5.7.23-31.31.1.el7,当前日期为2018.10.10。
PXC集群中,存储引擎使用的是percona xtrabackup,集群架构采用的是Galera Cluster,一种多主结构的集群。所以要安装percona存储引擎与 Galera依赖。
一般来说,中小型规模的时候,采用这种架构是最省事的。两个节点可以采用简单的一主一从模式,或者双主模式,并且放置于同一个VLAN中,在master节点发生故障后,利用keepalived/heartbeat的高可用机制实现快速切换到slave节点。
优点:
1)同步复制,事务要么在所有节点提交或不提交。
2)多主复制,可以在任意节点进行写操作。
3)在从服务器上并行应用事件,真正意义上的并行复制。
4)节点自动配置,数据一致性,不再是异步复制。
5)新节点可以自动部署,部署操作简单;
6)数据严格一致性,尤其适合电商类应用;
7)完全兼容MySQL;
PXC最大的优势:强一致性、无同步延迟
缺点:
1)只支持InnoDB引擎
2)PXC集群一致性控制机制,有可能被终止,原因如下:集群允许在两个节点上同时执行操作同一行的两个事务,但是只有一个能执行成功,另一个会被终止,集群会给被终止的客户端返回死锁错误(Error: 1213 SQLSTATE: 40001 (ER_LOCK_DEADLOCK)).
3)写入效率取决于节点中最弱的一台,因为PXC集群采用的是强一致性原则,一个更改操作在所有节点都成功才算执行成功。
4)所有表都要有主键;
5)不支持LOCK TABLE等显式锁操作;
6)锁冲突、死锁问题相对更多;
7)不支持XA;
8)集群吞吐量/性能取决于短板;
9)新加入节点采用SST时代价高;
10)存在写扩大问题;
11)如果并发事务量很大的话,建议采用InfiniBand网络,降低网络延迟;
事实上,采用PXC的主要目的是解决数据的一致性问题,高可用是顺带实现的。因为PXC存在写扩大以及短板效应,并发效率会有较大损失,类似semi sync replication机制。
二、安装环境
操作系统:CentOS Linux release 7.3
节点规划:
|
node1 |
192.168.164.131 |
|
node2 |
192.168.164.132 |
|
node3 |
192.168.164.124 |
端口:
3306 数据库对外服务的端口号
4444 请求SST SST: 指数据一个镜象传输 xtrabackup , rsync ,mysqldump
4567 : 组成员之间进行沟通的一个端口号
4568 : 传输IST用的。相对于SST来说的一个增量。
确保以上端口在防火墙中开放,或者直接关闭关闭防火墙服务,注意在CentOS版本的更新过程中,管理防火墙的指令变化较大
systemctl disable firewalld
在PXC官方文档中,建议关闭selinux服务,
setenforce
三 安装过程
1、在所有节点,执行:
yum install -y http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
安装EPEL源,percona官网提供的0.1-6版本,一般最新的版本坑很多,这里使用的是0.1-4版本。
2、重载yum缓存
yum clean all yum makecache
3、安装
yum install -y Percona-XtraDB-Cluster-
到这里,安装已经结束。因为我这里是可以连接外网的环境,yum工具会自动完成所有依赖包的匹配与安装。
如果是无外网环境,那么就需要到官网:
https://www.percona.com/downloads/Percona-XtraDB-Cluster-LATEST/
去把依赖包一个一个下载下来,再手动安装。
四、配置集群
1、在所有节点,创建SST的账户。
systemctl start mysqld #启动mysql进程 grep "temporary password" /var/log/mysqld.log #获取初始密码 mysql -uroot -p alter user 'root'@'localhost' identified by ''; GRANT RELOAD,LOCK TABLES,PROCESS,REPLICATION CLIENT ON *.* TO 'sstuser'@'localhost' IDENTIFIED BY 'password'; #创建SST用户 FLUSH PRIVILEGES;
注意,退出后,要关闭mysql进程。
# mysqladmin -uroot -p123456 shutdown
2、确保mysql进程关闭,在所有节点:vi /etc/my.cnf
[mysqld]
wsrep_provider=/usr/lib64/galera3/libgalera_smm.so #Galera库文件路径
wsrep_cluster_name=pxc-cluster #集群的逻辑名称,各节点应该统一
wsrep_cluster_address=gcomm://192.168.164.131,192.168.164.132,192.168.164.124 #列出集群内所有节点的IP
wsrep_node_name=pxc1 #当前节点的逻辑名称
wsrep_node_address=192.168.164.131 #当前节点的IP
wsrep_sst_method=xtrabackup-v2 #全量同步(SST)方式
wsrep_sst_auth=sstuser:password #用于SST的账户信息(需要自行创建)
pxc_strict_mode=ENFORCING #PXC严格模式,建议开启
binlog_format=ROW #binlog格式,PXC只支持格式为ROW的binlog
default_storage_engine=InnoDB #PXC对InnoDB存储引擎有最好的支持
innodb_autoinc_lock_mode=2 #在向有auto_increment 列的表插入数据时,PXC只支持interleaved(2)交错锁
注意在节点2、节点3,黄标内容要对应改为pxc2、pxc3,与对应的内网IP,公网IP不能识别
五、启动PXC集群
|
node1 192.168.164.131 |
node2 192.168.164.132 |
node3 192.168.164.124 |
|
systemctl start mysql@bootstrap.service |
||
|
systemctl start mysqld |
||
|
systemctl start mysqld |
||
|
mysql -uroot -p123456 -e "show status like 'wsrep%';" |
||
|
mysqladmin -uroot -p123456 shutdown |
||
|
mysql -uroot -p123456 -e "show status like 'wsrep%';" |
mysql -uroot -p123456 -e "show status like 'wsrep%';" |
|
|
systemctl start mysqld |
||
|
mysql -uroot -p123456 -e "show status like 'wsrep%';" |
如果一切顺利,会有如下参数信息:
wsrep_incoming_addresses | 192.168.164.124:3306,192.168.164.132:3306,192.168.164.131:3306
安装过程中的一些问题:
防火墙 是否关闭,selinux配置文件是静态文件,更改后是否已经重启。
sst用户的权限,使用sst账户能否在其他节点登录。
节点间是否能PING通。
Percona-XtraDB-Cluster-57 安装操作记录的更多相关文章
- PXC(Percona XtraDB Cluster)集群的安装与配置
Percona XtraDB Cluster是针对MySQL用户的高可用性和扩展性解决方案,基于Percona Server .其包括了Write Set REPlication补丁,使用Galera ...
- 搭建高可用mysql系列(2)-- Percona XtraDB Cluster 安装
本文主要介绍在 centos 下 Percona XtraDB Cluster(下文简称PXC) 的安装, 个人的系统版本信息如下: [root@c2-d09 worker]# more /etc/r ...
- Percona XtraDB Cluster(PXC) -集群环境安装
Percona XtraDB Cluster(PXC) ---服务安装篇 1.测试环境搭建: Ip 角色 OS PXC-version 172.16.40.201 Node1 Redhat/C ...
- Percona XtraDB Cluster简易入门 - 安装篇
说明 Percona XtraDB Cluster(简称PXC),是由percona公司推出的mysql集群解决方案.特点是每个节点都能进行读写,且都保存全量的数据.也就是说在任何一个节点进行写入操作 ...
- docker1.12 安装pxc(Percona XtraDB Cluster )测试
docker1.12 安装pxc(Percona XtraDB Cluster )测试
- Percona Xtradb Cluster的设计与实现
Percona Xtradb Cluster的设计与实现 Percona Xtradb Cluster的实现是在原mysql代码上通过Galera包将不同的mysql实例连接起来,实现了multi ...
- 如何搭建Percona XtraDB Cluster集群
一.环境准备 主机IP 主机名 操作系统版本 PXC 192.168.244.146 node1 ...
- 使用percona xtradb cluster的IST方式添加新节点
使用percona xtradb cluster的IST(Incremental State Transfer)特性添加新节点,防止新节点加入时使用SST(State SnapShop Transfe ...
- mysql高可用之PXC(Percona XtraDB Cluster)
简介 Percona XtraDB Cluster是MySQL高可用性和可扩展性的解决方案,Percona XtraDB Cluster提供的特性如下: 1).同步复制,事务要么在所有节点提交或不提交 ...
- MySQL高可用方案-PXC(Percona XtraDB Cluster)环境部署详解
MySQL高可用方案-PXC(Percona XtraDB Cluster)环境部署详解 Percona XtraDB Cluster简称PXC.Percona Xtradb Cluster的实现是在 ...
随机推荐
- Kubernetes从私有镜像仓库中拉取镜像
当我们尝试从私有仓库中拉取镜像时,可能会收到这样提示:requested access to the resource is denied Error response from daemon: pu ...
- FPM简介(定制rpm包)
FPM简介 fpm是生成rpm包的工具.rpm包的制作,采用fpm工具完成,FPM非常易用,此命令可以把rpm包的安装.卸载做得更加优雅,在安装前可以做一些准备工作,安装后可以做一些收尾工作,在卸载前 ...
- Python 类的常用内置方法
类的内置方法(魔法方法): 凡是在类内部定义,以__开头__结尾的方法,都是类的内置方法,类的内置方法,会在满足某种条件下自动触发. 1.1__new__ __new__:在___init__触发前, ...
- 洛谷P1248 加工生产调度 贪心
正解:贪心 解题报告: 传送门$QwQ$ $umm$直接看可能比较难想,可以先考虑另一个题? 有$n$个小怪,每打一只小怪会扣$a_i$的血,打完之后会回升$b_i$的血,问至少要多少血量才能使全程血 ...
- $CF311B\ Cats\ Transport$ 斜率优化
AcWing Description Sol 设f[i][j]表示前i个饲养员接走前j只猫咪的最小等待时间. 要接到j猫咪,饲养员的最早出发时间是可求的,设为d: $ d[j]=Tj-\sum_{k= ...
- linux入门基础指令大全(汇总)
一.文件目录指令 1 pwd指令 pwd 显示当前所在的目录 2 ls指令 ls [选项] [目录或文件] 查看文件信息 ls -a 查看所有文件和目录,包括隐藏的 ls -l 以列表的方式显示 ll ...
- MySQL之插入数据(添加数据)-INSERT
基本语法: INSERT 语句有两种语法形式,分别是 INSERT…VALUES 语句和 INSERT…SET 语句. 1.INSERT...VLAUES语句 INSERT VLAUES的语法格式如下 ...
- Java类成员之构造器
构造器含义: 是指使得JVM在构造对象的时候,帮助进行成员变量的初始化的方法. 构造器(构造方法)格式: 1.对于构造方法而言,方法的名称是固定的,和类名相同. 2.对于构造方法而言,它没有返回值,而 ...
- 全流程开发 TP6.0实战高并发电商服务系统*完
在TP6框架中我们可以学到TP整体知识,如下图一所示: 图一:TP6整体知识点 这些内容都会在实战课程中一一涵盖,并且在课程中我们会用到五层架构思想(如图二),和传统的MVC架构有所不一样,这样做可以 ...
- win + ubuntu 双系统 grub引导项修复
ubuntu liveCD模式,找到ubuntu的系统盘位置,挂载到系统上面,然后使用grub进行修复 ubuntu liveCD模式下是用boot-repair软件进行修复 grub急救模式 1. ...