部署galera 多主架构 (galera集群多用于关键性业务,因为galera集群为了数据的一致性,采用的是同步的机制,这就使galera牺牲了一部分性能来换取数据一致性。)

环境准备:三台服务器

master:192.168.206.3

master1:192.168.206.5

master2:192.168.206.6

yum配置

操作系统:CentOS7.3

数据库版本:MariaDB-10.3.7

1>yum配置,(三端数据库信息保持一致)

[mariadb]

name=MariaDB

baseurl=http://mirrors.ustc.edu.cn/mariadb/yum/10.3/centos7-amd64/

gpgkey=http://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB

gpgcheck=1

2>关闭防火墙 

3>三个主机都要互相解析

vim /etc/hosts

4>主节点编辑配置文件

vim /etc/my.cnf.d/server.cnf

在 [ galera ] 下面

wsrep_on=ON  wsrep_provider=/usr/lib64/galera/libgalera_smm.so     #galera的库文件的地址

wsrep_cluster_address="gcomm://192.168.206.3,192.168.206.5,192.168.206.6"   #各节点的ip

wsrep_node_name=node1         #节点主机名  

wsrep_node_address=192.168.206.3 #节点ip

binlog_format=row        #二进制日志设置为行模式  row (安全性最高,性能最低)

default_storage_engine=InnoDB    #使用的默认引擎 innoDB  支持事务

innodb_autoinc_lock_mode=2      #2为性能最好

wsrep_slave_threads=1              #并发线程数

innodb_flush_log_at_trx_commit=0                   #0.log buffer将每秒一次地写入log file中,并且log file的flush(刷到磁盘)操作同时进行。该模式下在

事务提交的时候,不会主动触发写入磁盘的操作,#1:每次事务提交时MySQL都会把log buffer的数据写入log file,并且flush(刷到磁盘)中去,该  模式为系统默                                                                              认。

#2:每次事务提交时MySQL都会把log buffer的数据写入log file,但是flush(刷到磁盘)操作并不会同

时进行。该模式下,MySQL会每秒执行一次 flush(刷到磁盘)操作

innodb_buffer_pool_size=120M       #设置缓存池大小

wsrep_sst_method=rsync             #远程同步

wsrep_causal_reads=ON         #避免各个节点的数据不一致,这种情况需要等待全同步复制 将此文件复制到master1、master2,注意要把 wsrep_node_name 和 wsrep_node_address 改成相应                                                                          节点的 hostname 和 ip。

注:graler 集群最好至少三个,两个的话。如果出现网络波动可能会出现脑裂;

三端都需要配置

5>第一次启动需要初始化

&1

mysqld_safe--wsrep_cluster_address=gcomm://192.168.206.3,192.168.206.5,192.168.206.6

这里会hang住 ,等他执行一段时间就好,

&2  执行  /bin/galera_new_cluster

6>另外两端启动数据库

service  mariadb restart

7>查看集群状态(进程和端口)(查看wsrep 状态也可以)

确保 wsrep 端口 :4567  与  mariadb端口: 3306 打开

&show status like ‘wsrep%'

8>测试

&master端

&master1端

&master2端

同步成功!

注: 若三台主机 关机了,再起就起不来了。

执行以下操作

vim /var/lib/mysql/grastate.dat

把safe_to_bootstrap更改为1

# GALERA saved state

version: 2.1 uuid:    a393feef-f639-11e8-9b89-4e75f9b8fb0f

seqno:   -1

safe_to_bootstrap: 1

Mariadb galera 集群的更多相关文章

  1. Linux下MySQL/MariaDB Galera集群搭建过程【转】

    MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...

  2. MariaDB Galera集群部署--技术流ken

    Galera集群介绍 MariaDB集群是MariaDB同步多主机集群.它仅支持XtraDB/ InnoDB存储引擎. 主要功能 同步复制 真正的multi-master,即所有节点可以同时读写数据库 ...

  3. mysql基础之mariadb galera集群(多主)

    一.概念 galera集群多用于关键性业务,因为galera集群为了数据的一致性,采用的是同步的机制,这就使galera牺牲了一部分性能来换取数据一致性. galera集群是基于wsrep协议(端口4 ...

  4. Linux下MySQL/MariaDB Galera集群搭建过程

    MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...

  5. MariaDB GALERA 集群双节点部署

    节点1:10.2.2.41 节点2:10.2.2.42 软件: mariadb-galera-10.0.22-linux-x86_64.tar.gz #galera相关参数:(两个节点配置文件类似) ...

  6. mysql主从配置和galera集群

    mariadb主从 主从多用于网站架构,因为主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是主从架构的数据库,读写分离必须基于主从架构 ...

  7. 使用kolla安装的openstack mariadb为集群所有节点无法启动

    当在做测试时,把所有的openstack节点都关机,再开启做测试时,发现mariadb galera集群启不来,相当于所有的mariadb集群都停止了(跟所有节点断电情况相似),这时候怎么办呢,重新建 ...

  8. mariadb 数据库集群配置

    mariadb集群配置(主从和多主)   mariadb主从 主从多用于网站架构,因为主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是 ...

  9. Galera集群server.cnf参数调整--前言

    文档安排: 前言部分会简述下galera集群,正文中会针对我们线上的环境,在不断业务的情况下,进行参数调整的话,有些参数不能够进行配置,会以#***的形式写入配置文件中,文档也会进行进一步说明. 如果 ...

随机推荐

  1. app dcloud 打包公用证书

    Android平台云端打包使用的DCloud公用证书 分类:HTML5+ 5+App开发 HBuilder|HBuilderX应用云端打包Android平台默认使用的DCloud公用证书,其信息如下: ...

  2. Zend Studio / Eclipse 缩进设置

    首先是Window – Preferences打开Preferences配置对话框: 然后依次找到PHP – Code Style – Formatter,如下图所示: 这里注意一下Active pr ...

  3. WebStorm改变字体大小以及更换背景颜色

    参考文章:https://blog.csdn.net/weixin_42676530/article/details/82961279

  4. intellij idea集成github

    IDEA配置github并上传项目 http://www.cnblogs.com/jinjiyese153/p/6796668.html github ssl验证 https://www.cnblog ...

  5. SpringAOP的简单实现

    AOP,即面向切面编程,springAOP采用的是动态代理的技术 其主要作用可以做一些与业务逻辑无关,但却必须的操作,例如日志记录,权限管理,检查数据,等等.首先,来做一个小实现来方便理解 首先,建立 ...

  6. CURL PHP模拟浏览器get和post

    模拟浏览器get和post数据需要经常用到的类, 在这里收藏了几个不错的方法 方法一 <?php define ( 'IS_PROXY', true ); //是否启用代理 /* cookie文 ...

  7. Python之函数作业

    Python之函数作业 爬页面 #爬虫页面,send一次爬一次 from urllib.request import urlopen def get(): while True: url = yiel ...

  8. Python之面向对象多态

    Python之面向对象多态 多态与多态性: 多态: 多态是指一类事物有多种形态,一个抽象类有多个子类,因而多态的概念依赖于继承. 1.序列类型有多种形态:字符串.列表.元组. 2.动物有多种形态:Pe ...

  9. Python之FTP实现

    Python之FTP实现 上传下载: import socket import struct import json import subprocess import os class MYTCPSe ...

  10. OpenCV+Python实现视频文件裁剪功能

    Python编程实现对视频文件进行剪切的功能.截取指定长度的视频并保存,运行后首先选择要裁剪的视频,然后输入开始时间点和停止时间点即可.将剪切后的视频保存为output.avi文件 所属网站分类: 资 ...