Mysql

將實例添加到 InnoDB 集群時,MySQL 錯誤地說 serverID 非唯一

  • January 7, 2020

將第二個實例添加到 MYSQL Innodb 集群時出現以下錯誤

ERROR: Cannot add instance 'XXX' to the cluster because it has the same server ID of a member of the cluster. Please change the server ID of the instance to add: all members must have a unique server ID.
Cluster.addInstance: Access denied for user 'XXX'@'XXX' (using password: YES) (RuntimeError)

但是,如果我檢查兩個 serverid,我可以確認它們是不同的

伺服器 1

mysql> show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id     | 3     |
+---------------+-------+
1 row in set (0.00 sec)

伺服器 2

show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id     | 1     |
+---------------+-------+
1 row in set (0.00 sec)

請指教?

您是否使用不同的帳戶來管理集群?即您是否使用一個帳戶來創建集群,並且您是否使用不同的帳戶將實例添加到其中?還是同一個賬號密碼不同?

如果是這種情況,那麼這就是您遇到此問題的原因。用於管理集群的帳戶必須在所有集群成員上具有相同的憑據。

建議使用 dba.configureInstance() 創建一個 clusterAdmin 帳戶。文件中的更多資訊。

目前的錯誤消息具有誤導性和混淆性。這將很快得到改進,並且文件也將被改進以概述此要求。

乾杯,米格爾

引用自:https://dba.stackexchange.com/questions/254228