MariaDB Galera集群garbd节点gcs_proto_ver版本不兼容故障求助
解决Galera仲裁节点garbd与MariaDB集群协议版本不兼容问题
问题根源
MariaDB 10.6.18对应的Galera集群要求使用gcs_proto_ver: 3,但你M3上的galera-arbitrator-4版本(4.11.r)仅支持到协议版本2,导致节点加入后立即失败。
解决方案(无需在M3安装完整MariaDB)
1. 确认MariaDB节点的Galera版本
在M1或M2上执行以下命令,获取集群使用的Galera版本:
mysql -e "SHOW GLOBAL STATUS LIKE 'wsrep_provider_version'"
输出示例(对应10.6的兼容版本):wsrep_provider_version | 4.1.7
2. 升级M3上的galera-arbitrator-4到兼容版本
Debian 11默认软件源中的galera-arbitrator版本偏旧,需添加MariaDB官方源获取匹配版本:
- 导入MariaDB签名密钥:
sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc' - 添加MariaDB 10.6版本源到系统:
echo "deb [arch=amd64,arm64,ppc64el] https://mirror.mariadb.org/repo/10.6/debian bullseye main" | sudo tee /etc/apt/sources.list.d/mariadb.list - 更新源并升级仲裁节点包:
sudo apt update && sudo apt install --only-upgrade galera-arbitrator-4 - 重启garbd服务:
sudo systemctl restart garbd
3. 验证修复效果
- 查看M3的系统日志,确认garbd稳定加入集群:
tail -f /var/log/syslog - 在M1/M2上检查集群节点数量,应为3(2个数据库节点+1个仲裁节点):
mysql -e "SHOW GLOBAL STATUS LIKE 'wsrep_cluster_size'"
内容的提问来源于stack exchange,提问作者bortunac
相关产品推荐
相关产品推荐

