We are using MySQL InnoDB Cluster(version 8.0.18).
We checked cluster status 'MISSING' at instances "172.18.0.32:3306","172.18.0.33:3306" as
follows.
-------------------------------------------------------------
# mysqlsh
MySQL JS > \connect
root@172.18.0.31
MySQL 172.18.0.31:33060+ ssl JS > var cluster = dba.getCluster('mycluster')
MySQL 172.18.0.31:33060+ ssl JS > cluster.status()
{
"clusterName": "mycluster",
"defaultReplicaSet": {
"name": "default",
"ssl": "REQUIRED",
"status": "OK_NO_TOLERANCE",
"statusText": "Cluster is NOT tolerant to any failures. 2 members are not active",
"topology": {
"172.18.0.31:3306": {
"address": "172.18.0.31:3306",
"mode": "R/W",
"readReplicas": {},
"replicationLag": null,
"role": "HA",
"status": "ONLINE",
"version": "8.0.18"
},
"172.18.0.32:3306": {
"address": "172.18.0.32:3306",
"mode": "R/O",
"readReplicas": {},
"role": "HA",
"status": "(MISSING)"
},
"172.18.0.33:3306": {
"address": "172.18.0.33:3306",
"mode": "R/O",
"readReplicas": {},
"role": "HA",
"status": "(MISSING)"
}
},
"topologyMode": "Multi-Primary"
},
"groupInformationSourceMember": "172.18.0.31:3306"
}
-------------------------------------------------------------
So we tried to remove 'MISSING' instances by rescan() command.
But we could not this by the error 'Cluster.rescan: The table does not comply with the requirements by an external plugin.'.
-------------------------------------------------------------
MySQL 172.18.0.31:33060+ ssl JS > cluster.rescan();
Rescanning the cluster...
Result of the rescanning operation for the 'default' ReplicaSet:
{
"name": "default",
"newTopologyMode": null,
"newlyDiscoveredInstances": [],
"unavailableInstances": [
{
"host": "172.18.0.32:3306",
"label": "172.18.0.32:3306",
"member_id": "6fd759eb-f910-11e9-8f9f-12c270ff8903"
},
{
"host": "172.18.0.33:3306",
"label": "172.18.0.33:3306",
"member_id": "7df257da-f910-11e9-beb1-d21810bb544a"
}
]
}
The instance '172.18.0.32:3306' is no longer part of the ReplicaSet.
The instance is either offline or left the HA group. You can try to add it to the cluster again with the cluster.rejoinInstance('172.18.0.32:3306') command or you can remove it from the cluster configuration.
Would you like to remove it from the cluster metadata? [Y/n]: Y
Removing instance from the cluster metadata...
Cluster.rescan: The table does not comply with the requirements by an external plugin. (MySQL Error 3098)
-------------------------------------------------------------
How can we resolve this problem ?
Please give us some advice.