MySQL Cluster ERROR 1296 (HY000): 从 NDBCLUSTER 得到错误 157 'Unknown error code'
Posted
技术标签:
【中文标题】MySQL Cluster ERROR 1296 (HY000): 从 NDBCLUSTER 得到错误 157 \'Unknown error code\'【英文标题】:MySQL Cluster ERROR 1296 (HY000): Got error 157 'Unknown error code' from NDBCLUSTERMySQL Cluster ERROR 1296 (HY000): 从 NDBCLUSTER 得到错误 157 'Unknown error code' 【发布时间】:2013-08-29 23:48:24 【问题描述】:今天我的数据中心发生断路器故障,导致我的服务器断电。我正在运行一个 4 节点 mysql 集群。我重新启动了集群,首先是管理节点,然后是数据节点,然后在数据节点运行后,我启动了 SQL 节点。然后我用 ndb_mgm -e SHOW 检查了集群。在我尝试运行查询之前,一切似乎都很好。我收到了这个错误,
错误 1296 (HY000):从 NDBCLUSTER 收到错误 157“未知错误代码”
我检查了 MySQL 日志,没有发现任何错误。然后我尝试完全关闭并重新启动 MySQL 集群并检查关闭和启动之间的配置。一切似乎都结束了。然后我使用 NDBCLUSTER 引擎在另一个数据库上运行查询。查询成功。我试过搜索谷歌,但似乎没有人有任何帮助的答案。我检查了配置,确保 ndbd 正在数据节点上运行,等等。除了这个之外,其他数据库似乎工作正常。我有数据库的备份,但如果可能的话,我最好恢复数据库。
如果有人有任何建议或想法,将不胜感激。
提前致谢。
【问题讨论】:
【参考方案1】:错误 157 实际上是“无法连接到存储引擎”,而 MySQL 未能正确报告该错误的事实是一个错误:http://bugs.mysql.com/bug.php?id=44817
该错误中描述的案例提到,当您尝试在集群仍处于关闭状态时查询 NDB 中的表时遇到错误。
所以我只是猜测,但我会得出结论,您的集群尚未启动。要么您错过了启动其中一个节点,要么在启动其中一个节点时出现了问题。
【讨论】:
ndb_mgm -e show 命令显示所有节点都在运行。集群中的其他数据库工作正常,但这个给我带来了问题。所以现在我有点难过。【参考方案2】:检查 mysql 服务器是否真的连接到 NDB 存储。 从应该连接到 NDB 的 mysql 服务器执行
显示全局状态,如“Ndb_cluster_node_id”;
答案是否 > 0?
SHOW GLOBAL STATUS LIKE 'Ndb_number_of_data_nodes';
答案 > 0 吗?
如果没有,那么 mysql 服务器没有连接,然后我建议你检查你的防火墙和 /etc/hosts 表并确保你没有这样的行:
127.0.0.1 本地主机 ..
最好的问候
约翰
【讨论】:
我检查并返回 0,所以我检查了我的防火墙并进行了适当的更改。它现在返回正确的结果,但我仍然收到错误。奇怪的是其他数据库工作正常。就是这个。以上是关于MySQL Cluster ERROR 1296 (HY000): 从 NDBCLUSTER 得到错误 157 'Unknown error code'的主要内容,如果未能解决你的问题,请参考以下文章
MySQL Cluster Auto-Installer 用户权限