千锋教育-做有情怀、有良心、有品质的一流教育机构

编程硬核资料库,
随查随看随问答!

当前位置:首页  >  行业资讯  >  正文
分享到:

郑州云计算基础知识学习:MySQL之Galera集群部署

时间:2020-02-29 10:43     来源:千锋教育 作者:Yolanda

  MySQL数据库是云计算人才必须要掌握的技能之一,其中涵盖很多的知识点,有基本的数据库操作,还有数据库集群部署等高阶知识。有很多同学想知道Galera集群部署怎么做,接下来千锋郑州云计算培训老师就给大家解答一下。

维度


  Galera是一个MySQL(也支持MariaDB,Percona)的同步多主集群软件。

  主要功能

  同步复制

  Active-active的多主拓扑结构

  真正的multi-master,即所有节点可以同时读写数据库

  自动成员资格控制,失败节点从群集中删除

  新节点加入数据自动复制

  真正的并行复制,行级

  项目,4台虚拟机

  一定要固定ip地址

  准备环境:

  主机解析:

  [root@mysql-1 ~]# cat /etc/hosts

  127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

  ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

  192.168.62.131 galera1

  192.168.62.231 galera2

  192.168.62.168 galera3

  192.168.62.166 galera4

  分别修改主机名称:

  [root@localhost ~] hostnamectl set-hostname mysql-1

  [root@localhost ~] hostnamectl set-hostname mysql-2

  [root@localhost ~] hostnamectl set-hostname mysql-3

  [root@localhost ~] hostnamectl set-hostname mysql-4

  所有机器关闭防火墙和selinux:

  # setenforce 0 && systemctl stop firewalld

  时间同步:

  所有机器修改时区:

  # ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

  准备时间服务器:

  galera1上操作

  [root@mysql-1 ~]# yum -y install ntp

  [root@mysql-1 ~]# vim /etc/ntp.conf //将下面两行添加进去

  server 127.127.1.0 # local clock

  fudge 127.127.1.0 stratum 10

  [root@mysql-1 ~]# systemctl restart ntpd

  其余3台客户端同步时间:

  [root@galera2 ~]# ntpdate galera1

  下载和安装Galera(每台都需要安装)

  注意:Galera有独立的补丁包,也有在mysql基础上打好补丁的完整包

  我们要下载带wsrep扩展补丁的版本,比如:

  MySQL 5.7.20 extended with wsrep patch version 25.13

  所以:删除原版本mysql:

  [root@mysql-1 yum.repos.d]# yum erase `rpm -qa | grep mysql` -y

  根据官方下载提示找到下载路径,发现下载路径下是已经做好yum源的路径,所以可以直接修改yum配置文件使用yum安装。

  配置yum源:

  [root@mysql-1 yum.repos.d]# yum -y install epel-release

  [root@mysql-1 yum.repos.d]# cat galera.repo

  [galera]

  name=galera

  baseurl=http://releases.galeracluster.com/mysql-wsrep-5.7/centos/7/x86_64/

  enabled=1

  gpgcheck=0

  [root@mysql-1 yum.repos.d]# yum list | grep 'galera'

  galera.x86_64 25.3.12-2.el7 epel

  mysql-wsrep-5.7.x86_64 5.7.20-25.13.el7 galera

  mysql-wsrep-client-5.7.x86_64 5.7.20-25.13.el7 galera

  mysql-wsrep-common-5.7.x86_64 5.7.20-25.13.el7 galera

  mysql-wsrep-devel-5.7.x86_64 5.7.20-25.13.el7 galera

  mysql-wsrep-libs-5.7.x86_64 5.7.20-25.13.el7 galera

  mysql-wsrep-libs-compat-5.7.x86_64 5.7.20-25.13.el7 galera

  mysql-wsrep-server-5.7.x86_64 5.7.20-25.13.el7 galera

  mysql-wsrep-test-5.7.x86_64 5.7.20-25.13.el7 galera

  注意:需要epel源提供galera包

  安装:

  [root@mysql-1 yum.repos.d]# yum install mysql-wsrep-5.7.x86_64 galera rsync -y

  4台全部启动:

  [root@mysql-1 ~]# systemctl start mysqld

  [root@mysql-1 ~]# grep password /var/log/mysqld.log

  [root@mysql-1 ~]# mysqladmin -u root -p'xCRk9#mws#.4' password 'Qianfeng123!'

  4台分别创建同步数据的用户

  [root@mysql-1 ~]# mysql -u root -p'Qianfeng123!'

  mysql> grant all on *.* to 'syncuser'@'%' identified by 'Qianfeng123!@';

  mysql> flush privileges;

  配置Galera Replication:

  galera1配置:主配置文件my.cnf追加如下内容

  server-id=1

  binlog_format=row

  innodb_file_per_table=1

  innodb_autoinc_lock_mode=2

  wsrep_on=ON

  wsrep_provider=/usr/lib64/galera/libgalera_smm.so

  wsrep_cluster_name='galera'

  wsrep_cluster_address='gcomm://'

  wsrep_node_name='galera1'

  wsrep_node_address='192.168.245.133'

  wsrep_sst_auth=syncuser:'Qianfeng123!@'

  wsrep_sst_method=rsync

  galera2配置:主配置文件my.cnf追加如下内容

  server-id=2

  binlog_format=row

  innodb_file_per_table=1

  innodb_autoinc_lock_mode=2

  wsrep_on=ON

  wsrep_provider=/usr/lib64/galera/libgalera_smm.so

  wsrep_cluster_name='galera'

  wsrep_cluster_address='gcomm://galera1,galera3,galera4'

  wsrep_node_name='galera2'

  wsrep_node_address='192.168.245.136'

  wsrep_sst_auth=syncuser:'Qianfeng123!@'

  wsrep_sst_method=rsync

  galera3配置:主配置文件my.cnf追加如下内容

  server-id=3

  binlog_format=row

  innodb_file_per_table=1

  innodb_autoinc_lock_mode=2

  wsrep_on=ON

  wsrep_provider=/usr/lib64/galera/libgalera_smm.so

  wsrep_cluster_name='galera'

  wsrep_cluster_address='gcomm://galera1,galera2,galera4'

  wsrep_node_name='galera3'

  wsrep_node_address='192.168.245.10'

  wsrep_sst_auth=syncuser:'Qianfeng123!@'

  wsrep_sst_method=rsync

  galera4配置:主配置文件my.cnf追加如下内容

  server-id=4

  binlog_format=row

  innodb_file_per_table=1

  innodb_autoinc_lock_mode=2

  wsrep_on=ON

  wsrep_provider=/usr/lib64/galera/libgalera_smm.so

  wsrep_cluster_name='galera'

  wsrep_cluster_address='gcomm://galera1,galera2,galera3'

  wsrep_node_name='galera4'

  wsrep_node_address='192.168.245.135'

  wsrep_sst_auth=syncuser:'Qianfeng123!@'

  wsrep_sst_method=rsync

  重启服务:每台机器

  [root@mysql-1 ~]# systemctl restart mysqld

  查看端口:galera端口4567 mysql端口3306

  [root@mysql-1 ~]# ss -auntpl | grep -E '3306|4567'

  测试:

  在任何一台机器上写入数据,其他机器全部会同步

  [root@mysql-1 ~]# mysql -u root -p'Qianfeng123!'

  mysql> create database youngfit;

  [root@mysql-2 ~]# mysql -u root -p'Qianfeng123!'

  [root@mysql-3 ~]# mysql -u root -p'Qianfeng123!'

  mysql> show databases;

  [root@mysql-4 ~]# mysql -u root -p'Qianfeng123!'

  mysql> show databases;

  了解更多云计算学习技能,你可以关注“千锋郑州校区”微信公众号,定期发布技术热点和行业趋势分析。你也可以来千锋郑州云计算培训班跟大牛讲师面对面学习交流,更快更好的掌握高端技能!

相关文章

  • 北京总部地址:北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
    北京沙河校区:北京市昌平区沙阳路18号北京科技职业技术学院广场服务楼
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、Linux云计算+网络安全培训、互联网营销培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 深圳校区地址:深圳市宝安区宝安大道5010号西部硅谷B座A区6层A605/B座C区1层108
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、Linux云计算+网络安全培训、互联网营销培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 上海校区地址:上海市宝山区同济支路199号智慧七立方3号楼2-4层
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、Linux云计算+网络安全培训、互联网营销培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 广州校区地址:广州市天河区元岗路200号慧通产业园B9三层
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 郑州二七区校区地址:郑州市二七区航海中路60号海为科技园C区10层
    郑州高新区校区地址:郑州市高新区金梭路与银杏路交叉口教育科技产业园南门D座4层
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 大连校区地址:辽宁省大连市高新园区爱贤街10号大连设计城A座901
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 武汉金融港校区地址:武汉市东湖高新技术开发区光谷大道77号金融港B18栋3楼
    武汉智慧园校区地址:武汉市东湖高新技术开发区光谷大道61号智慧园21栋2楼
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 成都校区地址:成都市高新区肖家河沿街138号肖家河大厦三楼
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 西安校区地址:西安市雁塔区高新六路52号立人科技C座西区4楼
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 杭州旺田校区:浙江省杭州市江干区九堡旺田书画城A座4层
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 青岛校区地址:青岛市市北区龙城路31号卓越世纪中心4号楼5层
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 重庆校区地址:重庆市高新区科园一路2号大西洋国际12-1
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 长沙校区地址:湖南省长沙市岳麓区麓谷企业广场A2栋三单元306号
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 哈尔滨校区地址:哈尔滨市松北区世泽路689号 科技创新城4号楼1101
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 南京校区地址:南京市建邺区应天大街780号弘辉产业园1栋2层
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 太原校区地址:太原市小店区长治路230号能源互联网大厦6层
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 沈阳校区地址:辽宁省沈阳市浑南区世纪路16号东大软件园B园B1座A201
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 合肥校区地址:合肥市包河区徽州大道396号东方广场B座12A
    咨询电话:400-811-9990
    面授课程:HTML5大前端培训、JavaEE+分布式开发培训、Python全栈+人工智能培训、全链路UI/UE设计培训、云计算培训、全栈软件测试培训、大数据+人工智能培训、智能物联网+嵌入式培训、Unity游戏开发培训、Go语言开发培训、PHP全栈+服务器集群培训、网络安全培训、互联网营销培训、好程序员
    认证课程:软考、Adobe认证、PMP认证、红帽RHCE认证
  • 千锋教育服务号

    了解千锋动态
    关注千锋教育服务号

  • 千锋教育移动站

    扫一扫快速进入
    千锋移动端页面

  • 千锋互联服务号

    扫码匿名提建议
    直达CEO信箱

[an error occurred while processing the directive]