https://galeracluster.com
# galera 集群 - docker部署
https://abc.htmltoo.com/thread-46267.htm
# docker-mariadb-galera 部署 - mysql 集群
https://abc.htmltoo.com/thread-46007.htm
# mariadb 10.6 galera 集群 - docker部署
https://abc.htmltoo.com/thread-46265.htm
# 单机测试 MariaDB Galera Cluster
https://abc.htmltoo.com/thread-46266.htm
# 编译安装: mariadb-galear-cluster
https://abc.htmltoo.com/thread-46008.htm
# 编译安装: mysql-galear-cluster
https://abc.htmltoo.com/thread-46009.htm
# docker安装: mariadb-galear-cluster
https://abc.htmltoo.com/thread-46010.htm
# rancher
应用 ---> MariaDB Galera Cluster ---> root-wdqdmm@r abc ihunter-wdqdmm@r;
SLB ----> 3306 -> galera-lb(3306) ;
# 客户端登陆
ip root wdqdmm@r 3306 ;
---> grant all on *.* to 'ihunter'@'%' identified by 'wdqdmm@m';
# rancher内网database-mysql上登陆
mysql -A -uroot -pwdqdmm@r -hmariadb -P3306;
grant all on *.* to 'ihunter'@'%' identified by 'wdqdmm@m';
source /data/file/soft/mysql/20180809/*; # 导入数据.
# 备份
# .tar.bz2 方便下载, 记得去除,原始文件为.sql.
mysqldump -uroot -pwdqdmm@r -hmariadb -P3306 --all-databases --ignore-table=information_schema.* --ignore-table=performance_schema.* --ignore-table=mysql.* > /data/file/mysql/20200116.sql.tar.bz2;
mysql_upgrade -uihunter -pwdqdmm@m -hmariadb -P3306;
# mysql-维护相关
https://abc.htmltoo.com/thread-45627.htm
=================================================
# galera-mariadb-galera-server-1, 配置: /etc/mysql/my.cnf
mysql -A -uroot -pwdqdmm@r -hmariadb -P3306;
show status like 'wsrep_cluster_size'; # 确认galera启动成功
show status like 'wsrep%'; # 查看galera状态
show status like 'wsrep_cluster%'; # 查看galera集群
show status like 'wsrep_cluster%';
+--------------------------+--------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------+
| wsrep_cluster_conf_id | 33 |
| wsrep_cluster_size | 2 |
| wsrep_cluster_state_uuid | 3065c57d-33d5-11ea-88a8-bbd94a170665 |
| wsrep_cluster_status | Primary # non-Primary: 没有主节点异常
ERROR 1047 (08S01): WSREP has not yet prepared node for application use:
# 重置galera集群状态,再写入。当关闭panic-on模式后,两个节点能同步数据到一直状态
SET GLOBAL wsrep_provider_options = 'pc.bootstrap=true';
SET GLOBAL wsrep_provider_options = 'pc.ignore_sb=true';
# root登陆异常, 取消root的本地登录限制
mysql -A -uihunter -pwdqdmm@m -hmariadb -P3306;
use mysql;
update user set host = '%' where user = 'root';
FLUSH PRIVILEGES;
# (临时)查看当前mysql的连接数:
show global status like 'Max_used_connections';
set GLOBAL max_connections=2000;
# (长期)my.cnf:
[mysqld]
max_connections=1000
# 查看连接报错配置:
show variables like '%max_connect_errors%';
set GLOBAL max_connect_errors=1000;
=================================================
1.简述:
MariaDB Galera Cluster 是一套在mysql innodb存储引擎上面实现multi-master及数据实时同步的系统架构,业务层面无需做读写分离工作,数据库读写压力都能按照既定的规则分发到 各个节点上去。在数据方面完全兼容 MariaDB 和 MySQL。
2.特性:
(1).同步复制 Synchronous replication
(2).Active-active multi-master 拓扑逻辑
(3).可对集群中任一节点进行数据读写
(4).自动成员控制,故障节点自动从集群中移除
(5).自动节点加入
(6).真正并行的复制,基于行级
(7).直接客户端连接,原生的 MySQL 接口
(8).每个节点都包含完整的数据副本
(9).多台数据库中数据同步由 wsrep 接口实现
3.局限性:
(1).目前的复制仅仅支持InnoDB存储引擎,任何写入其他引擎的表,包括mysql.*表将不会复制,但是DDL语句会被复制的,因此创建用户将会被复制,但是insert into mysql.user…将不会被复制的.
(2).DELETE操作不支持没有主键的表,没有主键的表在不同的节点顺序将不同,如果执行SELECT…LIMIT… 将出现不同的结果集.
(3).在多主环境下LOCK/UNLOCK TABLES不支持,以及锁函数GET_LOCK(), RELEASE_LOCK()…
(4).查询日志不能保存在表中。如果开启查询日志,只能保存到文件中。
(5).允许最大的事务大小由wsrep_max_ws_rows和wsrep_max_ws_size定义。任何大型操作将被拒绝。如大型的LOAD DATA操作。
(6).由于集群是乐观的并发控制,事务commit可能在该阶段中止。如果有两个事务向在集群中不同的节点向同一行写入并提交,失败的节点将中止。对 于集群级别的中止,集群返回死锁错误代码(Error: 1213 SQLSTATE: 40001 (ER_LOCK_DEADLOCK)).
(7).XA事务不支持,由于在提交上可能回滚。
(8).整个集群的写入吞吐量是由最弱的节点限制,如果有一个节点变得缓慢,那么整个集群将是缓慢的。为了稳定的高性能要求,所有的节点应使用统一的硬件。
(9).集群节点建议最少3个。
(10).如果DDL语句有问题将破坏集群。
4.关键技术
1、全局唯一ID生成,保证ID的唯一和递增
2、协调者自己也是通过广播接收后进行的数据库业务操作,各个节点平等,保证了并发
3、事务传输要么成功传给了所有节点,要么都失败
4、事务在所有节点中的顺序一致
5、每个节点知道所有节点的状态(通过广播实现)
5.优势
A.与异步复制相比:
数据一致性强,传统异步复制并不能保证主从数据一致性,这是由于一般情况下,主库多线程并发执行
事务,但从库却只有一个线程重做事务,在高压力情况下必然会导致主从延迟。
B.与使用半同步复制或分布式锁实现的同步复制相比:
性能高,扩展性好,半同步复制在高负载甚至从库性能较差的情况下,难以保证其性能。即使自动的
从半同步复制切换到异步复制,也会牺牲其最大的优点:一致性。其扩展友好度也较差
C.galera集群的独特优势:
1. 同步复制,主备无延迟
2. 支持多主同时读写,保证数据一致性
3. 集群中各节点保存全量数据
4. 节点添加/删除,自动检测和配置
5. 行级别并行复制
6. 不需要写binlog
https://blog.51cto.com/11912662/2155443
https://blog.csdn.net/weixin_42867972/article/details/84198696
https://www.jb51.net/article/157063.htm