一、PXC的特点
**高可用集群解决方案
**由两部分组成Percona Server with XtraDB和 Write Set Replication patches
**数据强一致性,无同步延迟(不管是同步或是半同步,都存在一定的延迟。强一致性解释:假设有三台服务器,其中一台不能执行命令,则返回客户端无法执行)
**没有主从切换操作,无需使用虚拟IP
**支持InnoDB存储引擎
**多线程复制
**部署使用简单
支持节点自动加入,无需手动拷贝数据
二、相应端口
三、主机角色
四、部署pxc流程
1.准备环境(三台主机互ping无误)
2.安装软件包(三台都装),注意安装顺序
]# 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
3.配置服务
①修改mysqld.cnf文件(3台)
[[email protected] ~]# vim /etc/percona-xtradb-cluster.conf.d/mysqld.cnf
[mysqld]
server-id=71/72/73 //server-id 不允许重复
datadir=/var/lib/mysql //数据库目录
socket=/var/lib/mysql/mysql.sock //socket文件
log-error=/var/log/mysqld.log //日志文件
pid-file=/var/run/mysqld/mysqld.pid //pid文件
log-bin //启用binlog日志
log_slave_updates //启用链式复制
expire_logs_days=7 //日志文件保留天数
:wq
②修改mysqld_safe.cnf文件(默认即可)
③修改wsrep.cnf文件(3台)
[[email protected] ~]# vim /etc/percona-xtradb-cluster.conf.d/wsrep.cnf
wsrep_cluster_address=gcomm://192.168.4.71,192.168.4.72,192.168.4.73//成员列表
wsrep_node_address=192.168.4.71 //本机ip(三台)
wsrep_cluster_name=pxc-cluster //集群名
wsrep_node_name=pxcnode71 //本机主机名(三台)
wsrep_sst_auth=“sstuser:123qqq…A” //SST数据同步授权用户及密码
:wq
④启动集群
1)启动集群服务
注意:在1台服务器上执即可(192.168.4.71),首次启动服务时间比较长
[[email protected] ~]# ]# systemctl start [email protected] //启动集群服务
[[email protected] ~]# grep pass /var/log/mysqld.log //查看数据库管理员初始登录密码
2019-06-20T12:29:42.489377Z 1 [Note] A temporary password is generated for [email protected]: W.HiOb8(ok)_
[[email protected] ~]#mysql –uroot –p’ W.HiOb8(ok)_’ //使用初始密码登录
Mysql> alter user [email protected]”localhost” identified by “123456”;//修改登录密码
MySQL> exit;
[[email protected] ~]#mysql –uroot –p123456 //使用修改后的密码登录
Mysql> garnt reload, lock tables,replication client,process on . to
[email protected]"localhost” identified by “123qqq…A”; //添加授权用户
2)启动数据库服务
启动主机pxcnode72的数据库服务,会自动同步pxcnode71主机的root初始密码和授权用户sstuser
[[email protected] ~]# systemctl start mysql //启动数据库服务
[[email protected] ~]#
[[email protected] ~]# netstat -utnlp | grep :3306
tcp6 0 0 :::3306 ::😗 LISTEN 12794/mysqld
[[email protected] ~]# netstat -utnlp | grep :4567
tcp 0 0 0.0.0.0:4567 0.0.0.0:* LISTEN 12794/mysqld
[[email protected] ~]#
3)启动主机pxcnode73的数据库服务,会自动同步pxcnode71主机的root初始密码和授权用户sstuser
[[email protected] ~]# systemctl start mysql //启动数据库服务
[[email protected] ~]#
[[email protected] ~]# netstat -utnlp | grep :3306
tcp6 0 0 :::3306 ::😗 LISTEN 12794/mysqld
[[email protected] ~]# netstat -utnlp | grep :4567
tcp 0 0 0.0.0.0:4567 0.0.0.0:* LISTEN 12794/mysqld
[[email protected] ~]#