Percona-XtraDB-Cluster 5.7版本(PXC)集群部署
PXC(Percona-XtraDB-Cluster)5.7版本集群部署
Centos 7.3系统部署Mysql 集群
PXC三个节点分别执行和安装
(1)配置hosts
cat /etc/hosts
172.16.2.10 node1
172.16.2.11 node2
172.16.2.12 node3
(2)依赖
yum –y remove mariadb-*
yum -y install gcc gcc-c++ perl-IO-Socket-SSL.noarch perl-DBD-MySQL.x86_64 perl-Time-HiRes openssl* openssl-devel libcurl-devel wget
(3)下载Percona XtraBackup 2.4
wget https://www.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.10/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.10-1.el7.x86_64.rpm
yum -y localinstall percona-xtrabackup--2.4.-.el7.x86_64.rpm
(4)安装Percona Release和Socat
yum -y install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
(5)安装PXC 5.7二进制包
wget https://www.percona.com/downloads/Percona-XtraDB-Cluster-LATEST/Percona-XtraDB-Cluster-5.7.21-29.26/binary/tarball/Percona-XtraDB-Cluster-5.7.21-rel20-29.26.1.Linux.x86_64.ssl1:102.tar.gz
tar -xf Percona-XtraDB-Cluster-5.7.21-rel20-29.26.1.Linux.x86_64.ssl1_102.tar.gz -C /usr/local/
mv /usr/local/Percona-XtraDB-Cluster-5.7.21-rel20-29.26.1.Linux.x86_64.ssl1\:102 /usr/local/mysql
useradd -s /sbin/nologin mysql
chown mysql.mysql -R /usr/local/mysql
mkdir -p /data/mysql/data
chown mysql.mysql -R /data/mysql/
echo 'export PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
source /etc/profile.d/mysql.sh
先配置第一台机器,并成功启动,在配置其他两台
在第一台主机上创建配置文件:
vim /etc/my.cnf
[client]
port =
socket= /data/mysql/mysql.sock
default-character-set=utf8 [mysqld]
basedir = /usr/local/mysql
datadir = /data/mysql/data
pid-file = /data/mysql/mysql.pid
character-set-server=utf8
init_connect = 'SET NAMES utf8'
log-bin=/data/mysql/log_bin
server-id =
innodb_buffer_pool_size = 100M
innodb_data_file_path = ibdata1:10M:autoextend
innodb_data_home_dir = /data/mysql
innodb_file_per_table=
skip-name-resolve
port =
socket = /data/mysql/mysql.sock
user=mysql
log_error=mysql_error.log #pxc
binlog_format=ROW
wsrep_cluster_address=gcomm://172.16.2.10,172.16.2.11,172.16.2.12 #三个节点都保持一样
wsrep_provider=/usr/local/mysql/lib/libgalera_smm.so
wsrep_node_address=172.16.2.10 #根据不同的node ip进行修改
wsrep_slave_threads=
wsrep_cluster_name=pxc_mysql #同一个cluster此值需要一致
wsrep_sst_method=xtrabackup-v2
wsrep_node_name=node_1 #不同节点修改为不同的名字
innodb_autoinc_lock_mode=
wsrep_sst_auth="sstuser:pxcmysql"
log-slave-updates [mysql]
no-auto-rehash
default-character-set=utf8
把这个文件写好了,传到其他两台机器的 /etc 下面,
每个主机的server-id 和wsrep_node_address、wsrep_node_name保持不同即可
初始化mysql5.7:(初始化只在第一个节点执行)
mysqld --initialize --user=mysql --datadir=/data/mysql/data
初始化参数使用--initialize-insecure,这样不会设置初始化root密码,如果是 --initialize的话,会随机生成一个密码
grep "password" /data/mysql/data/error.log
启动pxc mysql5.7
node1上:
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --wsrep-new-cluster --user=mysql &
新建传送用户:
grant all privileges on *.* to 'sstuser'@'localhost' identified by 'pxcmysql';(一定要localhost)
flush privileges;
查看集群状态
show status like 'wsrep%';
其他节点安装,具体步骤查看前面步骤
scp percona-xtrabackup-24-2.4.10-1.el7.x86_64.rpm 172.16.2.11:/root
scp percona-xtrabackup-24-2.4.10-1.el7.x86_64.rpm 172.16.2.12:/root
scp Percona-XtraDB-Cluster-5.7.21-rel20-29.26.1.Linux.x86_64.ssl1_102.tar.gz 172.16.2.11:/root
scp Percona-XtraDB-Cluster-5.7.21-rel20-29.26.1.Linux.x86_64.ssl1_102.tar.gz 172.16.2.12:/root
scp /etc/my.cnf 172.16.2.11:/etc/
scp /etc/my.cnf 172.16.2.12:/etc/
node2和node3启动(无需初始化)
/usr/local/mysql/bin/mysqld_safe –-defaults-file=/etc/my.cnf &
在PXC部署集群多次踩坑:
(1)按照官网文档/etc/init.d/mysql bootstrap-pxc 启动一直失败
解决:一开始怀疑是PXC版本问题,换了二个5.7小版本还是一样报错,最后使用/usr/local/mysql/bin/mysqld_safe 模式启动成功
(2)启动jnode3节点报错:[ERROR] WSREP: Command did not run: wsrep_sst_xtrabackup-v2 --role 'donor' --address '172.16.2.12:4444/xtrabackup_sst
解决:修改node3配置文件,用wsrep_sst_method = rsync启动,正常启动后同步数据完成,shutdown node2;然后修改node2的wsrep_sst_method = xtrabackup-v2,可以正常启动数据同步
以上解决方法希望对你有所帮助,解决方法来之不易,作者多次实验。
Percona-XtraDB-Cluster 5.7版本(PXC)集群部署的更多相关文章
- MySQL数据库高可用集群搭建-PXC集群部署
Percona XtraDB Cluster(下文简称PXC集群)提供了MySQL高可用的一种实现方法.集群是有节点组成的,推荐配置至少3个节点,但是也可以运行在2个节点上. PXC原理描述: 分布式 ...
- MySQL PXC集群部署
安装 Percona-XtraDB-Cluster 架构: 三个节点: pxc_node_0 30.0.0.196 pxc_node_1 30.0.0.198 pxc_node_2 30.0.0.19 ...
- Redis3.0.1 Stable版本的集群部署(Mac)
本文档基于如下原始文档(CentOS)创建: http://blog.csdn.net/xu470438000/article/details/42971091 修改了一些路径的错误,补全了一些命令执 ...
- PXC集群的概述及搭建
目录 PXC集群的概述及搭建 PXC集群的简介 PXC集群主要由两部分组成: PXC的特性和优点: PXC的局限和劣势: PXC原理描述 在Centos部署基于Mysql高可用方案操作过程 新增节点加 ...
- 搭建高可用mysql系列(2)-- Percona XtraDB Cluster 安装
本文主要介绍在 centos 下 Percona XtraDB Cluster(下文简称PXC) 的安装, 个人的系统版本信息如下: [root@c2-d09 worker]# more /etc/r ...
- 搭建高可用mysql系列(1)-- Percona XtraDB Cluster介绍
Percona XtraDB Cluster (下文简称PXC)是一个开源的mysql 高可用解决方案.它将Percona Server和Percona XtraBackup与Galera库集成在一起 ...
- Percona XtraDB Cluster(转)
Percona XtraDB Cluster是针对MySQL用户的高可用性和扩展性解决方案,基于Percona Server .其包括了Write Set REPlication补丁,使用Galera ...
- mysql5.7.25集群部署和方案设计(附PXC一键部署脚本)
还记得我们之前部署mysql集群有多麻烦嘛?波哥来救你们啦!~ 我已将项目上传到了我的github仓库中,大家可以点击仓库地址出现的连接登录查看相应的代码!如果觉得不错别忘了转发.点赞哦! 部署步骤: ...
- 02使用java脚本向Pxc集群写入数据
使用java脚本向Pxc集群写入数据 批量写入pxc集群程序 导入mysql驱动包 # 批量插入数据的java脚本 package pxc_demo; import java.sql.Connecti ...
- Redis cluster 集群部署和配置
目录 一.集群简介 cluster介绍 cluster原理 cluster特点 应用场景 二.集群部署 环境介绍 节点部署 启动集群 三.集群测试 一.集群简介 cluster介绍 redis clu ...
随机推荐
- python 捕获异常
- python 语法错误
- Java练习 SDUT-2787_加密术
加密术 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 加密技术是一种常用的安全保密手段,利用加密技术可以把重要的数据变 ...
- asp 与php 的不同之处
1.asp语句完成后不用加逗号:php要: 2.asp连接字符窜是用&:php用.; 3.asp需要用dim声明变量才能使用:php不用: 4.asp数组用(),php用[]; 5.asp的条 ...
- Android学习:导入工程时报错The import android cannot be resolved
今天在导入别人的工程时,出现了一个这个问题The import android cannot be resolved 就是找不到import android.support.v7.app.Action ...
- vue2——指令渲染,{{}}渲染
博客地址 :https://www.cnblogs.com/sandraryan/ 声明式的渲染,以{{}}的形式调用数据 <!DOCTYPE html> <html lang=&q ...
- LRJ-Example-06-01-Uva210
#define _CRT_SECURE_NO_WARNINGS #include <cstdio> #include <cstdlib> #include <cstrin ...
- H3C 代理ARP
- 第三期 第三期 搜索——1.运动规划(motion_planing)
运动规划的根本问题在于机器人可能存在于一个这样的世界中, 它可能想找到一条到达这个目标的路径,那么就需要指定一个到达那里的计划, 自动驾驶汽车也会遇到这个问题.他可能处于高速公路的附近的街道网络中,他 ...
- HTML静态网页--JavaScript-DOW操作
1.DOM的基本概念 DOM是文档对象模型,这种模型为树模型:文档是指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. 2.Windows对象操作 一.属性和方法: 属性(值或者子对象): o ...