Mariadb galera 集群

部署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 集群的更多相关文章
- Linux下MySQL/MariaDB Galera集群搭建过程【转】
MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...
- MariaDB Galera集群部署--技术流ken
Galera集群介绍 MariaDB集群是MariaDB同步多主机集群.它仅支持XtraDB/ InnoDB存储引擎. 主要功能 同步复制 真正的multi-master,即所有节点可以同时读写数据库 ...
- mysql基础之mariadb galera集群(多主)
一.概念 galera集群多用于关键性业务,因为galera集群为了数据的一致性,采用的是同步的机制,这就使galera牺牲了一部分性能来换取数据一致性. galera集群是基于wsrep协议(端口4 ...
- Linux下MySQL/MariaDB Galera集群搭建过程
MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...
- MariaDB GALERA 集群双节点部署
节点1:10.2.2.41 节点2:10.2.2.42 软件: mariadb-galera-10.0.22-linux-x86_64.tar.gz #galera相关参数:(两个节点配置文件类似) ...
- mysql主从配置和galera集群
mariadb主从 主从多用于网站架构,因为主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是主从架构的数据库,读写分离必须基于主从架构 ...
- 使用kolla安装的openstack mariadb为集群所有节点无法启动
当在做测试时,把所有的openstack节点都关机,再开启做测试时,发现mariadb galera集群启不来,相当于所有的mariadb集群都停止了(跟所有节点断电情况相似),这时候怎么办呢,重新建 ...
- mariadb 数据库集群配置
mariadb集群配置(主从和多主) mariadb主从 主从多用于网站架构,因为主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是 ...
- Galera集群server.cnf参数调整--前言
文档安排: 前言部分会简述下galera集群,正文中会针对我们线上的环境,在不断业务的情况下,进行参数调整的话,有些参数不能够进行配置,会以#***的形式写入配置文件中,文档也会进行进一步说明. 如果 ...
随机推荐
- at, batch, atq, atrm - 排队、检查或删除以后要执行的作业
总览 at [-V] [-q 队列] [-f 文件] [-mldbv] 时间 at -c 作业 [作业...] atq [-V] [-q 队列] [-v] atrm [-V] 作业 [作业...] b ...
- https://quotefancy.com/ 经典句子(英语) 真是特别好~
https://quotefancy.com/ 经典句子(英语)
- 利用jquery制作滚动到指定位置触发动画
<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>利用 ...
- 使用github作为maven仓库
本文介绍的这种使用 github 作为 maven 仓库的思路主要为: github的项目上创建mvn-repo分支,使用mvn-repo分支作为maven仓库 配 置 pom.xml 使用 targ ...
- vue中axios发送post请求,后端(@RequestParam)接不到参数
遇到的问题描述 :axios post 请求,后端接收不到参数. 我们的接口是java,用@RequestParam来接收前端的参数 解决方案:使用qs:axios中已经包含有qs,所以无需重新安装, ...
- How To:利用frm和idb文件进行数据恢复.txt
在另外一个机器上准备测试数据,并传输到dbadb05机器的/mysql/backup/reco/位置下.开始尝试恢复数据一.使用mysqlfrm获取表结构信息及DDL语句. [mysql@dbadb0 ...
- Python 软件开发目录规范
目录规范: ATM #工程文件夹 ------| bin #用来存放可执行文件的 |---- start.py conf #用来存放配置信息的 |---- settings.py lib ...
- eclipse 导入svn项目并添加server
1.打开svn资源库 window-->show view-->other-->svn-->svn资源库 2.控制台选中文件夹右键-->检出为--finish 3.添加服 ...
- rbac组件之权限初始化(五)
当用户登陆后,根据用户的角色要为用户生成对应的权限菜单,此时需要将登陆的用户信息获取且获取角色信息,从数据库中获取菜单以及权限信息,并且存入session中. 1.权限流程 第一次请求的页面是登陆页面 ...
- 第二周习题F
Starting with x and repeatedly multiplying by x, we can compute x31 with thirty multiplications: x2 ...