数据库集群搭建--PXC集群

PXC集群搭建

概念

- Percona XtraDB Cluster(简称PXC)
- 是基于Galera的mysql高可用集群解决方案
- Galera Cluster是Codership公司开发的一套免费开源的高可用方案
- PXC集群主要有两部分组成:Percona Server with XtraDB和Write Set Replication patches(同步,多主复制插件)
- 官网http://galeracluster.com

特点

1.具体如下:
-数据强一致性,无同步延迟
-没有主从切换操作,无需使用虚拟IP
-支持InnoDB存储引擎
-多线程复制
-部署使用简单
-支持节点自动介入,无需手动拷贝数据
2.相应端口:

端口说明
3306数据库服务端口
4444SST端口
4567集群通信端口
4568IST端口
SSTState Snapshot Transfer 全量同步
ISTIncremental State Transfer 增量同步

3.相较MHA集群相比,MHA集群的缺陷:

  • 管理服务监控到主服务器宕机服务会自动停止
  • 宕机的服务器再添加到集群里,要手动配置主从及同步数据
  • 客户端连接访问的是VIP地址
  • 用来搭建集群的服务器必须是主从结构
  • 要配置ssh无密码登陆

安装

1.安装包
rpm -ivh libev-4.15-1.el6.rf.x86_64.rpm 		//安装依赖
yum -y install percona-xtrabackup-24-2.4.13-1.el7.x86_64.rpm 
rpm -ivh qpress-1.1-14.11.x86_64.rpm		//安装依赖
tar -xvf Percona-XtraDB-Cluster-5.7.25-31.35-r463-el7-x86_64-bundle.tar 
yum -y install Percona-XtraDB-Cluster-*.rpm
2.环境配置
2.1 相关配置文件
  • /etc/percona-xtradb-cluster.conf.d //所在目录
  • mysqld.conf //数据库服务运行参数配置文件
  • mysqld_safe.cnf //Percona Server 5.7配置文件
  • wsrep.cnf //PXC集群配置文件
2.2 修改mysqld.cnf文件
[mysqld]
server-id=*  //给个id号,建议与本机ip一致
!注意!三台数据库服务器的server-id 不允许重复
2.3 修改wsrep.cnf文件
vim wsrep.cnf 		//配置集群文件
8  wsrep_cluster_address=gcomm://192.168.4.71,192.168.4.72,192.168.4.73(注意自己的IP在最后一个) //集群成员列表
25 wsrep_node_address=192.168.4.72\ 	//本机ip地址
27 wsrep_cluster_name=pxc-cluster			//集群名称,3台必须相同
30 wsrep_node_name=pxcnode72				//本机主机名
39 wsrep_sst_auth="sstuser:123qqq...A"	//SST完全备份数据同步授权用户的账号和密码

三台机器上同步以上操作,完成基础环境配置.

3.启动集群服务

在第一台服务器上启动集群服务,在另外两台服务器上启动数据库服务.

]# systemctl start mysql@bootstrap.service  	//启动集群服务
]# grep password /var/log/mysqld.log 					//查看数据库管理员初始登录密码
]# mysql -uroot -p'ZcKy8gYT&Ul>'					//登录
mysql> alter user root@"localhost" identified by "123456";	//修改登录密码
mysql> grant reload , lock tables , replication client , process on *.* to sstuser@"localhost" identified by "123456";	//添加授权
4.启动数据库服务

在第一台服务器上启动集群服务,在另外两台服务器上启动数据库服务.

systemctl start mysql				//启动数据库服务
ss -ntulp | grep 3306				//查看端口
ss -ntulp | grep 4567				//查看端口
5.测试配置
5.1 查看集群信息
mysql>show status like "%wsrep%";
5.2 在任意数据库服务器添加授权用户
mysql> grant all on 库名.* to 用户@"%" identified by "密码";
]# mysql -h服务器ip地址 -u用户名 -p密码  //访问集群
5.3 客户端连接任意数据库服务器访问数据
扩展—搭建负载均衡集群

环境准备:
新增一台虚拟机(192.168.4.9),安装haproxy包
修改配置文件/etc/haproxy/haproxy.cfg
-删除注释行
-删除31行以下全部
-新增代码

 listen mysql_3306 192.168.4.9:3306
 mode tcp
 option  tcpka				//
 balance roundrobin	//轮询调度算法
 server mysql_01 192.168.4.71:3306 check
 server mysql_02 192.168.4.72:3306 check
 server mysql_03 192.168.4.73:3306 check

重启服务

systemctl start haproxy

客户端访问192.168.4.9这台机器,测试结果

mysql -h192.168.4.9 -uadmin -p123456 -e "select @@hostname"
mysql -h192.168.4.9 -uadmin -p123456 -e "select @@hostname"
mysql -h192.168.4.9 -uadmin -p123456 -e "select @@hostname"
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值