暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

万里数据库GreatDB集中式故障诊断:组复制问题处理-10

原创 Dbb 2024-03-01
225

RECOVING 状态问题

  1. 初始化节点也可能处于 RECOVING 状态,属于正常状态,其余节点需要等待初始节点处于 ONLINE 状态后,才能加入集群
  2. 启动组复制集群前,需要在所有节点上执行如下命令,初始化组复制通道。并保证所有的节点需要使用统一的用户名和密码。

    CHANGE MASTER TO MASTER_USER="my_user", MASTER_PASSWORD="my_password," FOR CHANNEL "group_replication_recovery"
    

    如果没有执行该语句,新加入的节点将长期处于 RECOVING 状态, 如下示例。

    greatdb> start group_replication;   
    Query OK, 0 rows affected (4.21 sec)
    
    greatdb> do sleep(30);
    Query OK, 0 rows affected (30.00 sec)
    
    greatdb> SELECT MEMBER_HOST,MEMBER_PORT,MEMBER_STATE,MEMBER_ROLE FROM performance_schema.replication_group_members;
    +-------------+-------------+--------------+-------------+
    | MEMBER_HOST | MEMBER_PORT | MEMBER_STATE | MEMBER_ROLE |
    +-------------+-------------+--------------+-------------+
    | 127.0.0.1   |       13000 | ONLINE       | PRIMARY     |
    | 127.0.0.1   |       13001 | RECOVERING   | SECONDARY   |
    +-------------+-------------+--------------+-------------+
    2 rows in set (0.00 sec)
    

    查看错误日志,有如下错误信息,提示错误的组复制通过的用户。

    [ERROR] [MY-013117] [Repl] Slave I/O for channel 'group_replication_recovery': Fatal error: Invalid (empty) username when attempting to connect to the master server. Con    nection attempt terminated. Error_code: MY-013117
    
  3. 如果组复制集群中写入了大量的事务,新节点加入集群后,也可能长时间处于 RECOVING 状态,此时,新节点可能是在同步事务。因此,无法根据长时间处于 RECOVING 状态判断节点是否异常,此时可以查看错误日志进行判断。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论