hepeng 2017-05-06
Percona XtraDB Cluster是针对MySQL用户的高可用性和扩展性解决方案,基于Percona Server 。其包括了Write Set REPlication补丁,使用Galera 2.0库,这是一个针对事务性应用程序的同步多主机复制插件。
Percona XtraDB Cluster特点:
(1)同步复制,事务在所有集群节点要么同时提交,要么不提交。
(2)多主复制,可以在任意一个节点写入。
(3)从服务器上的并行应用事件,真正的“并行复制”。
(4)自动配置节点。
(5)数据一致性,没有不同步的从服务器。
实验系统:CentOS 6.6_x86_64
实验前提:防火墙和selinux都关闭,服务器上没有安装任何版本的MYSQL
实验说明:本实验共有3台主机,IP分配如拓扑
实验拓扑:
一、安装percona环境
1.配置yum源:
yum -y install http://www.percona.com/downloads/percona-release/RedHat/0.1-3/percona-release-0.1-3.noarch.rpm yum -y epel*
2.安装Percona软件:
yum -y install Percona-XtraDB-Cluster-server Percona-XtraDB-Cluster-client Percona-Server-shared-compat percona-xtrabackup
3.添加账户:
/etc/init.d/mysql bootstrap-pxc //启动PXC mysql ----------------------------------------> GRANT RELOAD,LOCK TABLES,REPLICATION CLIENT ON *.* TO com@localhost IDENTIFIED BY '123456'; FLUSH PRIVILEGES; \q <---------------------------------------- /etc/init.d/mysql stop
二、编辑PXC的节点配置:
1.在19.66上:
vim /etc/my.cnf -------------------------------------> wsrep_provider=/usr/lib64/libgalera_smm.so wsrep_cluster_address="gcomm://192.168.19.66,192.168.19.74,192.168.19.76" wsrep_sst_auth=com:123456 wsrep_cluster_name=Percona wsrep_sst_method=xtrabackup-v2 wsrep_node_address=192.168.19.66 wsrep_slave_threads=2 innodb_locks_unsafe_for_binlog=1 innodb_autoinc_lock_mode=2 <------------------------------------- /etc/init.d/mysql bootstrap-pxc
2.在19.74上:
vim /etc/my.cnf --------------------------------------> wsrep_provider=/usr/lib64/libgalera_smm.so wsrep_cluster_address="gcomm://192.168.19.66,192.168.19.74,192.168.19.76" wsrep_sst_auth=com:123456 wsrep_cluster_name=Percona wsrep_sst_method=xtrabackup-v2 wsrep_node_address=192.168.19.74 wsrep_slave_threads=2 innodb_locks_unsafe_for_binlog=1 innodb_autoinc_lock_mode=2 <-------------------------------------- /etc/init.d/mysql start
3.在19.76上:
vim /etc/my.cnf --------------------------------> wsrep_provider=/usr/lib64/libgalera_smm.so wsrep_cluster_address="gcomm://192.168.19.66,192.168.19.74,192.168.19.76" wsrep_sst_auth=com:123456 wsrep_node_address=192.168.19.76 wsrep_cluster_name=Percona wsrep_sst_method=xtrabackup-v2 wsrep_slave_threads=2 innodb_locks_unsafe_for_binlog=1 innodb_autoinc_lock_mode=2 <-------------------------------- /etc/init.d/mysql start
4.各节点上查看状态,保证如下几项没有问题:
mysql ----------------------------------------------> SHOW STATUS LIKE '%wsrep%'; +------------------------------+----------------------------------------------------------+ | Variable_name | Value | +------------------------------+----------------------------------------------------------+ | wsrep_local_state_uuid | a82bc530-3748-11e5-a4fc-c26f7c90839c | ... | wsrep_local_state | 4 | | wsrep_local_state_comment | Synced | ... | wsrep_cluster_size | 3 | | wsrep_cluster_status | Primary | | wsrep_connected | ON | ... | wsrep_ready | ON | +------------------------------+----------------------------------------------------------+
5.测试:
在19.66上:
CREATE DATABASE jason; USE jason; CREATE TABLE jjj (id int ,name char(10)) engine=innodb; COMMIT;
在19.74上:
USE jason; INSERT INTO jjj values (1,'22'); COMMIT;
在19.76上:
USE jason; SELECT * FROM jjj;
在任意服务器均可读写,其他操作大家可以自行尝试。至此实验成功,谢谢!
Percona XtraDB Cluster 的详细介绍:请点这里
Percona XtraDB Cluster 的下载地址:请点这里