我在 2 台服务器中有一个管理节点、2 个数据节点和 2 个 SQL 节点。管理节点位于其中一台服务器中。由于某些未知原因,我无法连接到我的 SQL 节点。我想也许我对配置文件做了一些事情(我确实做了),所以我为集群重新设置了一台新服务器,但结果仍然相同,当我重新运行数据节点时,它无法分配 ID。
服务器 1(管理、数据、SQL)服务器 2(数据、SQL)
第一次启动数据节点时,一切正常
2017-08-24 10:50:11 [ndbd] INFO -- Angel connected to '192.168.1.69:1186'
2017-08-24 10:50:15 [ndbd] INFO -- Angel allocated nodeid: 2
第二次尝试失败:(
2017-08-23 12:25:48 [ndbd] INFO -- Angel connected to '192.168.1.69:1186'
2017-08-23 12:26:19 [ndbd] ERROR -- Failed to allocate nodeid, error: 'Error: Could not alloc node id at 192.168.1.69 port 1186: No free node id found for ndbd(NDB).'
以下是管理节点中显示的内容
-- NDB Cluster -- Management Client --
ndb_mgm> show
Connected to Management Server at: 192.168.1.69:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=2 @192.168.1.69 (mysql-5.6.28 ndb-7.4.10, Nodegroup: 0, *)
id=3 @192.168.1.70 (mysql-5.6.28 ndb-7.4.10, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.1.69 (mysql-5.6.28 ndb-7.4.10)
[mysqld(API)] 2 node(s)
id=4 (not connected, accepting connect from 192.168.1.69)
id=5 (not connected, accepting connect from 192.168.1.70)
我的配置文件(config.ini)
[ndb_mgmd default]
# Directory for MGM node log files
DataDir=/var/lib/mysql-cluster
[ndb_mgmd]
#Management Node db1
NodeId: 1
HostName=192.168.1.69
[ndbd default]
NoOfReplicas=2 # Number of replicas
DataMemory=256M # Memory allocate for data storage
IndexMemory=128M # Memory allocate for index storage
#Directory for Data Node
DataDir=/var/lib/mysql-cluster
[ndbd]
#Data Node db2
NodeId: 2
HostName=192.168.1.69
[ndbd]
#Data Node db3
NodeId: 3
HostName=192.168.1.70
[mysqld]
#SQL Node db4
NodeId: 4
HostName=192.168.1.69
(我的.cnf)
[mysqld]
ndbcluster
ndb-connectstring=192.168.1.69 # IP address of Management Node
default_storage_engine=ndbcluster # Define default Storage Engine used by MySQL
[mysql_cluster]
ndb-connectstring=192.168.1.69 # IP address of Management Node
请帮忙!!!
谢谢
答案1
您已启动并运行了 2 个数据节点。因此,不确定为什么要启动已在运行的数据节点。
在我看来,您现在想要启动的是 MySQL 服务器。