【问题标题】: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 正在数据节点上运行,等等。除了这个之外,其他数据库似乎工作正常。我有数据库的备份,但如果可能的话,我最好恢复数据库。

如果有人有任何建议或想法,将不胜感激。

提前致谢。

【问题讨论】:

    标签: mysql database-administration mysql-cluster


    【解决方案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,所以我检查了我的防火墙并进行了适当的更改。它现在返回正确的结果,但我仍然收到错误。奇怪的是其他数据库工作正常。就是这个。
    猜你喜欢
    • 1970-01-01
    • 2020-08-26
    • 1970-01-01
    • 1970-01-01
    • 2015-06-01
    • 2019-02-13
    • 2018-10-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多