MySQL 集群出现问题,
所有节点都可以很好地连接到 ndb 管理节点,但是当我尝试在其中一个节点上创建表时,它会返回此错误:
mysql>使用 foo; 数据库已更改 mysql> 创建表 bar (i int) 引擎 = ndbcluster; 错误 1005(HY000):无法创建表“foo.bar”(errno:157)
我检查我的节点,并得到以下信息:
-- NDB 集群 -- 管理客户端 -- ndb_mgm>显示 已连接到管理服务器:XXXX:1186 集群配置 --------------------- [ndbd(NDB)] 1 个节点 id=2@XXXX(版本:5.1.34,节点组:0,主) [ndb_mgmd(MGM)] 1 个节点 id=1@XXXX(版本:5.1.34) [mysqld(API)] 4 个节点 id=3@XXXX(版本:5.1.34) id=4(未连接,接受来自任何主机的连接) id=5(未连接,接受来自任何主机的连接) id=6(未连接,接受来自任何主机的连接) ndb_mgm>
一切看起来都很好,
这里是一些版本信息。
FreeBSD my.server.com 7.1-RELEASE FreeBSD 7.1-RELEASE #0: 2009 年 5 月 12 日星期二 10:12:51 CAT [电子邮件保护]:/usr/obj/usr/src/sys/SEROTONIN-KERNEL i386 /usr/local/libexec/mysqld Ver 5.1.34,适用于 i386 上的 portbld-freebsd7.1(FreeBSD 端口:mysql-server-5.1.34) MySQL distrib 5.1.34,用于 portbld-freebsd7.1 (i386),使用 --with-ndbcluster --with-plugins=max 编译
任何帮助都将不胜感激。
答案1
尝试重启集群。首先将管理节点联机,然后服务器联机。我认为这是一种竞争条件(某种程度上)。如果可行,请告诉我。
答案2
管理节点似乎没问题,但是您没有数据节点。您需要让 /usr/sbin/ndbd 在数据节点上正确运行....这可能是因为您的 my.cnf 文件中没有这个文件。