Percona XtraDB Cluster 集群环境建立与验证指南

Percona XtraDB Cluster 集群环境建立与验证指南
Percona XtraDB Cluster 是MySQL数据库的一种集群方案。并且与 MySQL Server 社区版本、Percona Server 和 MariaDB 兼容。
一、在Ubuntu上安装Percona XtraDB Cluster
实验环境:
    假设有3台计算机设备安装了ubuntu系统,将被用作3个节点:
    Node        Host        IP
    Node1       pxc1        172.16.24.209
    Node2       pxc2        172.16.24.208
    Node3       pxc3        172.16.24.207

前置条件:
    (1) 确保一下端口没被防火墙屏蔽或被其他进程占用:
     3306
     4444
     4567
     4568
    (2) 卸载 apparmor
    sudo apt-get remove apparmor

安装步骤:
    在每一台设备上执行下列命令:
    wget https://repo.percona.com/apt/percona-release_0.1-4.$(lsb_release -sc)_all.deb
    sudo dpkg -i percona-release_0.1-4.$(lsb_release -sc)_all.deb
    sudo apt update
    sudo apt install percona-xtradb-cluster-full-57
    passord:frank
       
    至此,percona-xtradb-cluster已经安装,登录 MySQL.
    mysql -u root -p
    (输入密码 "frank")。
    添加用户
    mysql> CREATE USER ‘sstuser‘@‘localhost‘ IDENTIFIED BY ‘passw0rd‘;
    mysql> GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO ‘sstuser‘@‘localhost‘;
    mysql> FLUSH PRIVILEGES;
    mysql> quit
    sudo service mysql stop

二、配置节点
1. 初始化集群
以第1台设备作为第1个集群节点。在 /etc/mysql/my.cnf 添加如下配置:
###############################################################
[mysqld]
wsrep_provider=/usr/lib/libgalera_smm.so
wsrep_cluster_name=pxc-cluster
wsrep_cluster_address=gcomm://
wsrep_node_name=pxc1
wsrep_node_address=172.16.24.209
wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth=sstuser:passw0rd
pxc_strict_mode=ENFORCING
binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
###############################################################
完成修改之后,执行:
sudo /etc/init.d/mysql bootstrap-pxc
数据库将以自举模式启动。至此,集群初始化工作已经完成。登录MySQL,执行如下命令,查看初始化结果:
mysql> show status like ‘wsrep%‘;
+----------------------------------+--------------------------------------+
| Variable_name                    | Value                                |
+----------------------------------+--------------------------------------+
| wsrep_local_state_uuid           | 0d718de1-a19c-11e7-81e3-127c64915155 |
| wsrep_protocol_version           | 7                                    |
| wsrep_last_committed             | 4                                    |
...
| wsrep_local_state_comment        | Synced                               |
...
| wsrep_cluster_conf_id            | 1                                    |
| wsrep_cluster_size               | 1                                    |
| wsrep_cluster_state_uuid         | 0d718de1-a19c-11e7-81e3-127c64915155 |
| wsrep_cluster_status             | Primary                              |
| wsrep_connected                  | ON                                   |
| wsrep_local_bf_aborts            | 0                                    |
| wsrep_local_index                | 0                                    |
| wsrep_provider_name              | Galera                               |
| wsrep_provider_vendor            | Codership Oy <[email protected]>    |
| wsrep_provider_version           | 3.22(r8678538)                       |
| wsrep_ready                      | ON                                   |
+----------------------------------+--------------------------------------+
67 rows in set (0.00 sec)

2. 添加节点
添加第2台设备,修改其配置文件 /etc/mysql/my.cnf ,添加如下语句:
###############################################################
[mysqld]
wsrep_provider=/usr/lib/libgalera_smm.so
wsrep_cluster_name=pxc-cluster
wsrep_cluster_address=gcomm://172.16.24.209,172.16.24.208,172.16.24.207
wsrep_node_name=pxc2
wsrep_node_address=172.16.24.208
wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth=sstuser:passw0rd
pxc_strict_mode=ENFORCING
binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
###############################################################
退出重启即可。重启后也登录MySQL,执行“show status like ‘wsrep%‘;”,查看添加结果。

添加第3台设备,修改其配置文件 /etc/mysql/my.cnf ,添加如下语句:
###############################################################
[mysqld]
wsrep_provider=/usr/lib/libgalera_smm.so
wsrep_cluster_name=pxc-cluster
wsrep_cluster_address=gcomm://172.16.24.209,172.16.24.208,172.16.24.207
wsrep_node_name=pxc3
wsrep_node_address=172.16.24.207
wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth=sstuser:passw0rd
pxc_strict_mode=ENFORCING
binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
###############################################################
退出重启即可。重启后也登录MySQL,执行“show status like ‘wsrep%‘;”,查看添加结果。

使第一台设备工作在正常模式。修改其配置文件 /etc/mysql/my.cnf ,添加如下语句:
###############################################################
[mysqld]
wsrep_provider=/usr/lib/libgalera_smm.so
wsrep_cluster_name=pxc-cluster
wsrep_cluster_address=gcomm://172.16.24.209,172.16.24.208,172.16.24.207
wsrep_node_name=pxc1
wsrep_node_address=172.16.24.209
wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth=sstuser:passw0rd
pxc_strict_mode=ENFORCING
binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
###############################################################
重启。

三、验证写集复制功能(Write-Set Replication)
1. Create a new database on the second node:
mysql> CREATE DATABASE testDB1;
Query OK, 1 row affected (0.00 sec)

2. Create a table on the third node:
mysql> USE testDB1
Database changed
mysql> CREATE TABLE example (node_id INT PRIMARY KEY, node_name VARCHAR(30));
Query OK, 0 rows affected (0.01 sec)

3. Insert records on the first node:
mysql> INSERT INTO testDB1.example VALUES (1, ‘percona1‘);
Query OK, 1 row affected (0.01 sec)

4. Retrieve rows from that table on the second node:
mysql> SELECT * FROM testDB1.example;
+---------+-----------+
| node_id | node_name |
+---------+-----------+
|       1 | percona1  |
+---------+-----------+
1 row in set (0.00 sec)

参考文档:
Percona-XtraDB-Cluster-5.7.18-29.20.pdf

时间: 2024-08-07 04:15:21

Percona XtraDB Cluster 集群环境建立与验证指南的相关文章

如何搭建Percona XtraDB Cluster集群

一.环境准备 主机IP                     主机名               操作系统版本     PXC 192.168.244.146     node1              CentOS7.1      Percona-XtraDB-Cluster-56-5.6.30 192.168.244.147     node2              CentOS7.1      Percona-XtraDB-Cluster-56-5.6.30 192.168.244

mysql之 Percona XtraDB Cluster集群线程模型

Percona XtraDB集群创建一组线程来为其操作提供服务,这些线程与现有的MySQL线程无关.有三个主要线程组: 一.Applier线程 Applier线程应用从其他节点接收的写入集.写消息直接通过gcv_recv_thread. 使用wsrep_slave_threads变量控制线程的数量.默认值是1,这意味着至少有一个wsrep applier线程存在来处理请求. Applier线程等待一个事件,一旦它捕获到事件,它就使用普通的从应用线程路径应用它,并用wsrep-customizat

redis演练(8) redis Cluster 集群环境安装

redis是个分布式缓存,与传统数据库最大的优势,在于它的"分布式"上. 分布式的优势: 容易实现容量的扩展 数据的均等分布 很好的高可用性 redis 和memcached是分布式缓存的两款流行方案,他们之间的对比 redis memcached 主从功能 Replication 支持 主备自动切换 本身不支持,可以通过客户端自己实现 键值一致性 哈希槽 一致性哈希 集群 服务端支持(但是beta版) unstable 由客户端实现 工具支持 提供自带的工具(客户端redis-cli

Redis进阶实践之十一 Redis的Cluster集群搭建

原文:Redis进阶实践之十一 Redis的Cluster集群搭建 一.引言 本文档只对Redis的Cluster集群做简单的介绍,并没有对分布式系统的所涉及到的概念做深入的探讨.本文只是针对如何设置集群.测试和操作集群做了简述,并且从用户的角度描述了系统的行为,并不涉及Redis集群规范中所包含的细节.但是,本教程试图从最终用户的角度来解释有关Redis的Cluster集群的可用性和一致性的特点,并以简单易懂的方式讲解. 请注意,本教程需要使用Redis 3.0版本或更高版本. 如果您打算部署

redis演练(9) redis Cluster 集群管理&failover情况

<redis演练(8) redis Cluster 集群环境安装>,简单阐述了如何安装redis集群环境. 集群环境,主要包括2部分. 1.配置每个节点的配置信息(redis.conf),尤其开启cluster 2.创建集群redis-trib.rb创建集群. 过程非常简单,但非常繁琐,尤其配置各个集群节点的配置信息,如果有一定数量,工作量也不小. 没关系,redis提供了一款cluster工具,能快速构造集群环境.本章的主要内容是介绍redis提供的集群工具. 1.使用create-clus

Percona XtraDB Cluster(PXC) -集群环境安装(原创)

Percona XtraDB Cluster(PXC)   ---服务安装篇   1.测试环境搭建: Ip 角色 OS PXC-version 172.16.40.201 Node1 Redhat/Centos 6/7 5.7.23 172.16.40.202 Node2 Redhat/Centos 6/7 5.7.23 172.16.40.203 Node3 5.7.23 5.7.23   2.安装 2.1安装方式 测试环境选择二进制安装,生产环境选择编译安装方式以达到性能最佳 2.2版本选择

Mysql上的RAC:Percona XtraDB Cluster负载均衡集群安装部署手册

 Percona XtraDB Cluster安装部署手册 引言 编写目的 编写此文档,供PerconaXtraDB Cluster部署时使用. 预期读者 系统维护人员及实施人员. 编制依据及参考资料 目标 通过阅读该手册,让读者明确PerconaXtraDB Cluster的安装.配置和维护情况,为后续数据库运维工作提供指导. 应用部署方案 环境准备 服务器列表 序号 IP 用途 HOSTNAME 操作系统 1 192.168.0.7 Percona XtraDB Cluster RedHat

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

Percona XtraDB Cluster是针对MySQL用户的高可用性和扩展性解决方案,基于Percona Server .其包括了Write Set REPlication补丁,使用Galera 2.0库,这是一个针对事务性应用程序的同步多主机复制插件. Percona XtraDB Cluster特点: (1)同步复制,事务在所有集群节点要么同时提交,要么不提交. (2)多主复制,可以在任意一个节点写入. (3)从服务器上的并行应用事件,真正的“并行复制”. (4)自动配置节点. (5)

PXC(Percona XtraDB Cluster)集群安装

作者在2014Oracle数据库嘉年华中有幸听到了关于去哪网的MySQL数据库基于PXC的高可用架构设计主题. MySQL和Oracle是完全不同的两种数据库,Oracle重于管理,而MySQL更重要的是架构设计.笔者对MySQL以及新技术也是充满了好奇,索性回来自己搭建一个测试环境. 操作系统:CentOS 6.6 软件版本:5.5.39-36.0-55 PerconaXtraDB Cluster (GPL) 节点信息: pxc1 192.168.0.200 pxc2 192.168.0.20