Назад | Перейти на главную страницу

Я не могу удалить экземпляр из MySQL InnoDB Cluster, есть ошибка get_string (7): field is NULL (LogicError)

У меня есть MySQL InnoDB Cluster (версия 5.7). У меня всего два сервера, главный и подчиненный.

Я пытаюсь удалить главный экземпляр, чтобы ведомый стал мастером.
Когда я выполняю команду cluster.removeInstance('root@mysql-master:3306'). У меня ошибка :

The instance will be removed from the InnoDB cluster. Depending on the instance
being the Seed or not, the Metadata session might become invalid. If so, please
start a new session to the Metadata Storage R/W instance.

Cluster.removeInstance: get_string(7): field is NULL (LogicError)

Я не могу найти решение по поводу этого сообщения об ошибке. Кто-нибудь может мне помочь?

Просто из любопытства, почему у вас только 2 сервера с кластером InnoDB? Это значит, что вы можете использовать функцию автоматической настройки MySQL Router?

В любом случае просто выключите главный сервер, и подчиненный должен стать мастером.

Я только что попытался настроить 3 сервера с MySQL 5.7.24 и получил ту же ошибку. Это должно быть ошибка в реализации метода, хотя он действительно проверяет имя сервера (попробуйте поддельное имя, и вы увидите другую ошибку).

Вы можете вручную удалить экземпляр, изменив, удалив записи для этого сервера в таблицах экземпляров и хостов в базе данных mysql_innodb_cluster_metadata. Вы также должны отразить изменение в файле конфигурации mysql.