发布 MySQL 8.0.36 的 Galera Cluster

💡 原文英文,约500词,阅读约需2分钟。
📝

内容提要

Codership发布了多主Galera Cluster for MySQL 8.0的新版本,修复了garbd的错误和崩溃问题,改进了CLONE SST的端口设置和用户创建过程,并扩展了诊断功能。集群现在仅依赖于MySQL错误代码来标准化Total Order Isolation (TOI)错误投票。修复了存储过程中的死锁和BF中止错误处理问题,以及SELECT FOR UPDATE查询中的自动提交问题。建议下载最新软件并更新Galera Clusters。

🔎

延伸解读

升级前需关注的兼容性变化

本次发布包含多项协议版本提升:GCS协议版本因向后兼容性而提升,wsrep协议版本也因TOI错误投票标准化而提升。这些变更旨在防止升级过程中集群分裂,但意味着滚动升级时需确保所有节点版本一致,避免混合版本运行导致通信问题。建议在测试环境验证升级流程。

CLONE SST的实用改进

CLONE SST现在会从my.cnf读取端口设置(如果未在wsrep_sst_address中显式指定),简化了配置。用户创建时改用caching_sha2_password认证插件,替代了mysql_native_password,这符合MySQL 8.0的默认安全策略,但需确保客户端支持该插件。诊断消息的增强有助于排查SSL相关的问题。

错误处理与诊断增强

修复了存储过程中死锁与BF中止组合导致的断言失败,通过优化错误处理,在子语句执行完成前忽略wsrep BF中止错误。同时,SELECT FOR UPDATE查询中的自动提交处理得到改进,防止BF中止引发的不一致和InnoDB断言。诊断功能扩展至包含事务序列号和源ID,便于定位被忽略的错误。

❓

Q&A

Galera Cluster for MySQL 8.0.36的新版本有哪些主要改进?

新版本修复了garbd的错误,改进了CLONE SST的端口设置和用户创建过程,并扩展了诊断功能。

如何处理Galera Cluster中的死锁和BF中止错误?

通过改进错误处理过程,忽略wsrep BF中止错误,直到子语句执行后再处理。

为什么Galera Cluster现在依赖MySQL错误代码进行TOI错误投票?

这是为了减少因区域差异和非确定性执行路径引起的不一致性。

CLONE SST的改进具体包括哪些内容?

CLONE SST改进包括从my.cnf读取端口设置,使用caching_sha2_password进行用户创建,以及增强的诊断消息。

更新Galera Clusters的建议是什么?

建议下载最新软件并更新Galera Clusters,以确保使用最新的功能和修复。

新版本中对SSL的处理有什么变化?

弃用了socket_ssl_compression选项,并在显式设置时发出警告,确保SSL下节点优雅关闭时不崩溃。

🏷️

标签

➡️

继续阅读