我在 Ubuntu 10.10 上安装和配置 MySQL 集群时遇到问题
这是集群管理的配置
[NDBD DEFAULT]
NoOfReplicas=2
DataMemory=10MB
IndexMemory=25MB
MaxNoOfTables=256
MaxNoOfOrderedIndexes=256
MaxNoOfUniqueHashIndexes=128
[MYSQLD DEFAULT]
[NDB_MGMD DEFAULT]
[TCP DEFAULT]
[NDB_MGMD]
Id=1 # the NDB Management Node (this one)
HostName=192.168.10.101
[NDBD]
Id=2 # the first NDB Data Node
HostName=192.168.10.11
DataDir= /var/lib/mysql-cluster
[NDBD]
Id=3 # the second NDB Data Node
HostName=192.168.10.12
DataDir=/var/lib/mysql-cluster
[MYSQLD]
[MYSQLD]
这是两个节点的配置:
[mysqld]
ndbcluster
ndb-connectstring=192.168.10.101 # the IP of the MANAGMENT (THIRD) SERVER
[mysql_cluster]
ndb-connectstring=192.168.10.101 # the IP of the MANAGMENT (THIRD) SERVER
运行所有节点和管理后,我使用 ndb_mgm,输入“show”命令,出现如下内容:
ndb_mgm> show
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=2 @192.168.10.11 (mysql-5.1.39 ndb-7.0.9, Nodegroup: 0, Master)
id=3 @192.168.10.12 (mysql-5.1.39 ndb-7.0.9, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.10.101 (mysql-5.1.39 ndb-7.0.9)
[mysqld(API)] 1 node(s)
id=4 (not connected, accepting connect from 192.168.10.101)
看看最后两行..不像什么http://dev.mysql.com/tech-resources/articles/mysql-cluster-for-two-servers.html 看起来像(参见第 4 点)
有人遇到过这个问题吗?
答案1
嗯首先,非常重要的一点是...管理服务器和 mysql/存储服务器不能相同。我希望您这里有真正不同的服务器。
但您的问题看起来像是您的节点存在配置问题或没有正确启动节点。
首次启动或测试时。
mkdir /var/lib/mysql-clustercd /var/lib/mysql-cluster /usr/local/mysql/bin/ndbd --initial /etc/rc.d/init.d/mysql.server start
目录存在并且您对其进行初始化非常重要。请注意,存储引擎和 mysql.server 是不同的东西,这有点令人困惑。一个实际上是保存数据的存储,另一个是客户端,您可以在底部看到。两者都必须启动。
但
仅当确实重要时才使用--initial。
但需要注意的是,MySQL Cluster 中有一个小问题。您无法更改正在运行的存储引擎中的表。因此,如果您有一个使用 NDB 存储引擎的表,则无法添加字段。
为此,您需要将其更改为 myisam,例如更改表,然后将其更改回 ndbcluster 引擎,我认为当您完成应用程序时就可以了。但对于许多项目,您会遇到很多问题。
我已经试用 MySQL Cluster 好几天了,也阅读了很多文档,这是一个很酷的系统,但运行和管理起来很复杂。但我用过旧版本的 mysql cluster,比如新的 7.1,可能有很多不同之处。
我希望你能解决这个问题。