鍍金池/ 問答/數(shù)據(jù)庫/ mysql集群報錯 'No free node id found for mys

mysql集群報錯 'No free node id found for mysqld(API).'

錯誤描述

Mysql集群的sql node無法連上,mgm

mgm日志錯誤信息如下

2017-11-27 20:28:35 [MgmtSrvr] WARNING  -- Failed to allocate nodeid for API at 192.168.1.104. Returned error: 'No free node id found for mysqld(API).'
2017-11-27 20:28:36 [MgmtSrvr] INFO     -- Alloc node id 4 failed, no new president yet
2017-11-27 20:28:37 [MgmtSrvr] INFO     -- Alloc node id 4 failed, no new president yet - Repeated 5 times
2017-11-27 20:28:37 [MgmtSrvr] INFO     -- Node 3: Initial start, waiting for 2 to connect,  nodes [ all: 2 and 3 connected: 3 no-wait:  ]

mysql服務(wù)錯誤信息(sql node)

2017-11-28T03:18:43.565265Z 4 [Warning] NDB: Failed to acquire global schema lock, error: (4009)Cluster Failure
2017-11-28T03:18:43.566664Z 4 [Warning] NDB: Failed to acquire global schema lock, error: (4009)Cluster Failure
2017-11-28T03:18:43.569894Z 4 [Warning] NDB: Failed to acquire global schema lock, error: (4009)Cluster Failure
2017-11-28T03:18:43.570676Z 4 [Warning] NDB: Failed to acquire global schema lock, error: (4009)Cluster Failure

mgm show信息

ndb_mgm> show
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)]    2 node(s)
id=2    @192.168.1.101  (mysql-5.7.20 ndb-7.5.8, starting, Nodegroup: 0)
id=3    @192.168.1.102  (mysql-5.7.20 ndb-7.5.8, starting, Nodegroup: 0)

[ndb_mgmd(MGM)]    1 node(s)
id=1    @192.168.1.103  (mysql-5.7.20 ndb-7.5.8)

[mysqld(API)]    3 node(s)
id=4 (not connected, accepting connect from any host)

配置信息

說明

  • 服務(wù)器:linux centos 7
  • mysql-cluster: mysql-cluster-community-7.5.8-1.el7.x86_64.rpm-bundle

服務(wù)器信息

IP 節(jié)點名稱 描述
192.168.1.103 mgm 集群管理節(jié)點
192.168.1.101 data node 集群數(shù)據(jù)節(jié)點
192.168.1.102 data node 集群數(shù)據(jù)節(jié)點
192.168.1.104 sql node 集群mysqld節(jié)點

mgm配置信息

[ndbd default]
NoOfReplicas=2        # Number of replicas
DataMemory=80M        # How much memory to allocate for data storage
IndexMemory=18M        # How much memory to allocate for index storage
ServerPort=2202

[ndb_mgmd]
HostName=192.168.1.103        # Hostname or IP address of MGM node
DataDir=/var/lib/mysql-cluster    # Directory for MGM node log files

[ndbd]
HostName=192.168.1.101        # Hostname or IP address
NodeId=2            # Node ID for this data node
DataDir=/opt/mysql/data        # Directory for this data node's data files

[ndbd]
HostName=192.168.1.102        # Hostname or IP address
NodeId=3            # Node ID for this data node
DataDir=/opt/mysql/data        # Directory for this data node's data files

[mysqld]
# SQL node options:
HostName=192.168.1.104
NodeId=4

mysql 配置

[mysqld]
user=mysql
ndbcluster
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

symbolic-links=0
default-storage-engine=NDBCLUSTER
ndb-connectstring=192.168.1.103

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysql_cluster]
ndb-connectstring=192.168.1.103

我的啟動順序

mgm(103) -> data node1(101) -> data node2(102) -> sql node(104)

已嘗試過的方法

  • mgm中添加空的[mysqld]
  • 重裝mysql
  • mysql5.7版本中沒有mysql_safe所以無法嘗試這種方法
回答
編輯回答
愿如初

你DataNode都還沒起來
先把DataNode起來再看

2018年6月25日 07:57