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版本选择

2.3官网下载地址

https://www.percona.com/software/mysql-database/percona-xtradb-cluster

2.4 二进制安装包安装

上传mysql二进制包3个结点的/usr/local/src下

注意:每个节点需要安装好 xtrbackup,cocat

# yum 安装/二进制包安装/rpm

1、解压到/usr/local/下(3个节点执行相同操作步骤)

# mv Percona-Server-5.7.23-24-Linux.x86_64.ssl101 /usr/local/mysql-5.7.23-ps

#创建软连接

# cd /usr/local/

# ln -s mysql-5.7.23-ps mysql

# chown root.mysql mysql-5.7.23-ps -R

#添加环境变量 到文件 /etc/profile

export MYSQL_HOME=/usr/local/mysql

export PATH=$MYSQL_HOME/bin:$PATH

# source /etc/profile

# mysql --version

#创建myslq data/logs目录

# mkdir -p /home/mysql/app/pxc-mysql/6066/{data,logs,etc}

# mkdir -p /home/mysql/app/pxc-mysql/6066/logs/binlog

# chmod 750 /home/mysql/app/pxc-mysql/ -R

# chown mysql.mysql /home/mysql/app/pxc-mysql/ -R

# 配置启动文件

# cp support-files/mysql.server /etc/init.d/mysqld-6066

# chmod +x /etc/init.d/mysqld-6066

# chkconfig --add mysqld-6066

# chkconfig --level 35 on mysqld-6066

#修改端口

# vim /etc/init.d/mysqld-6066

#修改

2、初始化实例(3台执行相同操作)

上传搁置的my.cnf 到 /home/mysql/app/pxc-mysql/6066/etc目录下

注意权限,属组/主

# 初始化配置参数

# cd /usr/local/mysql

# ./bin/mysqld --defaults-file=/home/mysql/app/pxc-mysql/6066/etc/my.cnf --initialize-insecure --user=mysql

# bin/mysql_ssl_rsa_setup --datadir=/home/mysql/app/pxc-mysql/6066/data/

3、201节点上启动mysql

# /etc/init.d/mysqld start

# ln -sf /home/mysql/app/pxc-mysql/6066/etc/mysql-6066.sock /tmp/6066.sock

注:当node1启动的时候,它会先尝试加入一个已存在的集群,但是现在集群并不存在,pxc必须从0开始,所以node1的启动必须加上命令--wsrep-new-cluster,用于新建一个新的集群。node1正常启动之后,其他的node就可以使用平时的启动方式,它们都会自动连接上primary node】

4、设置密码

# mysql -p -S /tmp/6066.sock

mysql>SET PASSWORD = PASSWORD('mysqladmin');

mysql>flush privileges;

mysql>show status like 'wsrep_local_state%';

mysql>show status like 'wsrep_cluster_%';

5、主节点添加账号:

grant usage on *.* to 'pxc-monitor'@'172.16.40.%' identified by 'pxc-monitor';

grant all privileges on *.* to pxcsst@'%' identified by 'password';

6、启动202节点:

步骤参考2、3点

注意:

启动node2节点数据库,先将my.cnf的wsrep_sst_method参数值设置为rsync,完成节点加入后,可以设置回xtrabackup-v2,重启数据库,避免报错)

WSREP: gcs/src/gcs_group.cpp:gcs_group_handle_join_msg():741: 0.0 (pxc-node201): State transfer to abort.

# service mysqld start

#  mysql -S /tmp/6066.sock -p

7、3个节点全部启动后查看状态

注意:

过程中会可能出现各种错误、建议集群节点启动报错的时候,将三台的错误日志全部一起查看,观察节点启动过程中,三台节点的状态变化,注意 err 报文,在根据提示对应查找解决办法。

附录:

1、socat 安装:

#下载二进制包解压

# tar zxvf socat-2.0.0-b9.tar.gz

# ./configure

# make

# make install

# ln -s /usr/local/bin/socat /usr/bin

2、xtrabackup-2.4.12 包安装

# 下载二进制安装包并解压

# tar zxvf percona-xtrabackup-2.4.12-Linux-x86_64.libgcrypt145.tar.gz

# mv percona-xtrabackup-2.4.12-Linux-x86_64 /usr/local/xtrabackup-2.4.12

# ln -sf /usr/local/xtrabackup-2.4.12/bin/* /usr/bin/

Percona XtraDB Cluster(PXC) -集群环境安装的更多相关文章

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

    Percona XtraDB Cluster是针对MySQL用户的高可用性和扩展性解决方案,基于Percona Server .其包括了Write Set REPlication补丁,使用Galera ...

  2. Percona XtraDB Cluster(PXC) Mysql 集群

    Percona XtraDB Cluster(PXC)   ---原理介绍篇         目录 一.简介 1 二.优缺点 2 三.区别/局限性 3 四. PXC复制原理 4 五. 服务解释 5   ...

  3. Percona XtraDB Cluster(PXC)原理

    Percona XtraDB Cluster(PXC)原理 介绍: PXC曾经属于一套近乎最完美的mysql高可用集群解决方案(现mgr总体上要优于pxc),相比传统的基于主从复制模式的集群架构MHA ...

  4. 大数据集群环境 zookeeper集群环境安装

    大数据集群环境 zookeeper集群环境准备 zookeeper集群安装脚本,如果安装需要保持zookeeper保持相同目录,并且有可执行权限,需要准备如下 编写脚本: vi zkInstall.s ...

  5. Ubuntu 下 Neo4j单机安装和集群环境安装

    1. Neo4j简介 Neo4j是一个用Java实现的.高性能的.NoSQL图形数据库.Neo4j 使用图(graph)相关的概念来描述数据模型,通过图中的节点和节点的关系来建模.Neo4j完全兼容A ...

  6. zookeeper集群环境安装配置

    众所周知,Zookeeper有三种不同的运行环境,包括:单机环境.集群环境和集群伪分布式环境 在此介绍的是集群环境的安装配置 一.下载: http://apache.fayea.com/zookeep ...

  7. Hadoop集群环境安装

    转载请标明出处:  http://blog.csdn.net/zwto1/article/details/45647643:  本文出自:[zhang_way的博客专栏] 工具: 虚拟机virtual ...

  8. Percona XtraDB Cluster(PXC)-高可用架构设计说明

    Mycat+PXC高可用集群 一.架构图 架构说明: 1.mysql 集群高可用部分: l 针对业务场景选用Percona XtraDB Cluter(PXC)复制集群.两个片集群 PXC-dataN ...

  9. Storm入门(二)集群环境安装

    1.集群规划 storm版本的变更:storm0.9.x   storm0.10.x  storm1.x上面这些版本里面storm的核心源码是由Java+clojule组成的.storm2.x后期这个 ...

随机推荐

  1. Linux学习笔记一:Linux配置java环境变量

    一.安装JDK: 1.创建JDK的安装目录: sudo mkdir /usr/jdk 2.将jdk-7u25-linux-x64.tar.gz拷贝至/usr/jdk目录下 sudo cp jdk-7u ...

  2. 最长上升子序列nlogn算法

    LIS问题是经典的动态规划问题,它的状态转移相信大家都很熟悉: f[i] = f[k] + 1  (k < i 且 A[k] < A[i]) 显然这样做复杂度是O(n^2) 有没有更快的算 ...

  3. KMP算法复习【+继续学习】

    离NOIP还剩12天,本蒟蒻开始准备复习了. 先来个KMP[似乎我并没有写过KMP的blog] KMP KMP算法是解决字符串匹配问题的一个算法,主要是单对单的字符串匹配加速,时间复杂度O(m + n ...

  4. Linux内核分析第一周学习博客 --- 通过反汇编方式学习计算机工作过程

    Linux内核分析第一周学习博客 通过反汇编方式学习计算机工作过程 总结: 通过这次对一个简单C程序的反汇编学习,我了解到计算机在实际工作工程中要涉及大量的跳转指针操作.计算机通常是顺序执行一条一条的 ...

  5. Spring MVC @CookieValue注解

    @CookieValue的作用 用来获取Cookie中的值 @CookieValue参数 1.value:参数名称 2.required:是否必须 3.defaultValue:默认值 @Cookie ...

  6. $(window).load与$(document).ready的区别

    刚好今天学了用jQuery实现瀑布流的用法,但加载时发现了一个小小的问题,那就是分别用$(window).load与$(document).ready实现加载时,$(document).ready的布 ...

  7. 使用git上传项目到GitHub上

    之前的博客有<使用git拉取GitHub上的项目>的文章,那么现在说一下,如何上传项目到GitHub上. 1. Git的.gitignore 文档配置 因为项目中可能有很多的图片还有nod ...

  8. JVM调优总结(4):分代垃圾回收

    为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的.因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率. 在Java程序运行的过程中,会产生大量的对象, ...

  9. spring boot 使用logback日志系统的详细说明

    springboot按照profile进行打印日志 log4j logback slf4j区别? 首先谈到日志,我们可能听过log4j logback slf4j这三个名词,那么它们之间的关系是怎么样 ...

  10. 始终要重载toString

    本文涉及到的概念 1.重载toString方法的意义 2.两个注意事项   1.重载toString方法的意义 重载toString,返回关于当前实例的描述信息.这在调试错误,打印实例信息时,可以带来 ...