您好,我正在使用带有 10.1.12-MariaDB 的 Galera,SST 方法是 xtrabackup-v2
请不要推荐 SST=rsync 它不适合我
我有健康的集群 8 个节点,有时一个或几个节点出现故障。我刚service mysql
开始,他们成功连接到集群,一切正常。
但有时,当几天断开连接的节点时,我无法将它们连接到集群。
经过几次尝试后,我rm -fr /var/lib/mysql/*
也rm -fr /var/log/mysql/*
没有,他们在系统日志中有这条消息:
mysqld: [ERROR] Binlog file '/var/log/mysql/mariadb-bin.003079' not found in binlog index, needed for recovery. Aborting.
我知道如何使用它,当我的节点无法通过上面的消息连接到集群时,我可以恢复集群,所以我这样做:
- 关闭所有节点,只保留一个节点
- 关闭最后一个节点和
rm -fr /var/log/mysql/*
- 使用已删除的 binlog 引导最后一个节点
- 将其他节点连接到集群
service mysql start
- 利润 - 一切都好
但问题是:
我不能关闭所有生产节点,也不能关闭最后一个节点,因为我有 8 个节点来服务大型站点流量,当所有流量都流向它时,一个正在运行的节点会立即关闭(当然是因为过载)
问题是:
请帮我。当节点无法连接并出现错误时如何将节点连接到集群mysqld: [ERROR] Binlog file '/var/log/mysql/mariadb-bin.003079' not found in binlog index, needed for recovery. Aborting.