初见 MariaDB Galera Cluster
Posted 少安事务所
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初见 MariaDB Galera Cluster相关的知识,希望对你有一定的参考价值。
基于mysql实现的高可用方案有很多,如MySQL Group Cluster/MHA/MMM/MyCAT等等,下面来初步了解一下MariaDB Galera Cluster
。
MariaDB Galera Cluster, 是一个多主同步集群。仅在Linux上可用,只支持 InnoDB(XtraDB)存储引擎。最新稳定版本:MariaDB-10.2.12, Galera-25.3.22
Galera是意大利语,意思是Galley,桨帆船,一种巨大的人力划桨船,寓意着高度的一致性和协调性
Galera Cluster 公司前身是 Codership,Galera Cluster产品从2007年发布第一个版本至今已有十载
MariaDB Galera Cluster
是MariaDB对Galera Cluster的封装。另一个对Galera Cluster的封装是Percona XtraDB Cluster
,简称PXC
Feature
同步复制
多活主节点
任意节点可读写
成员自动控制,失败节点将被丢弃
节点自动加入
真正的行级并行复制
与单节点一样的使用体验
支持InnoDB存储引擎
Benefits
没有slave延迟
没有事务丢失
读写可伸缩性
较小的客户端延迟
强数据一致性
Limitations
仅支持InnoDB存储引擎,但是DDL(比如CREATE USER)语句是例外
不支持显示锁,包括LOCK TABLES, FLUSH TABLES {explicit table list} WITH READ LOCK, (GET_LOCK(), RELEASE_LOCK(),…).
所有的表必须有显示主键,支持联合主键
不支持分布式事务
事务大小限制。行数不超过128K,大小不超过1Gb
binary log 格式仅限于
binlog_format=ROW
不支持Windows
Start MariaDB Galera Cluster
Info
CentOS 7.4
MariaDB 10.2.12
Galera 25.3.22
下面实验的内容是MariaDB Galera Cluster
的单节点安装配置:
Step1. 增加Yum源
# MariaDB 10.2 CentOS repository list# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
Step2. 安装MariaDB
通过yum方式进行安装
# list available package
yum --disablerepo=\* --enablerepo=mariadb list available
# install
sudo yum install MariaDB-server MariaDB-client
Step3. 配置Galera
需要配置下列必填参数
wsrep_provider
— Path to the Galera librarywsrep_cluster_address
— see cluster connection URLbinlog_format=ROW
— see Binary Log Formatsdefault_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
innodb_doublewrite=1
(the default) when using Galera provider of version >= 2.0.query_cache_size=0
(only for versions prior to 5.5.40-galera, 10.0.14-galera and 10.1.2)wsrep_on=ON
— Enable wsrep replication (starting 10.1.1)
# galera
[galera]
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://"
binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
innodb_doublewrite=1
query_cache_size=0
wsrep_on=ON
Step3. 启动MariaDB
sudo systemctl start mariadb
sudo systemctl status mariadb
Step4. 查看Galera状态
SHOW STATUS LIKE 'wsrep_%';
Summary
以上内容仅仅是初步窥探MariaDB Galera Cluster
,如果需要深入了解,或是想搭建能够投产的集群,则还有一个很长的Todo List。
Reference
https://mariadb.com/kb/en/library/galera-cluster/
http://galeracluster.com/products/
https://mariadb.com/kb/en/library/mariadb-galera-cluster-known-limitations/
https://downloads.mariadb.org/mariadb/repositories/
— The End —
— Bonsoir —
↓↓↓ 点击阅读原文,查看更多内容。
以上是关于初见 MariaDB Galera Cluster的主要内容,如果未能解决你的问题,请参考以下文章
MariaDB Galera Cluster(mariadb10.1.22)部署