我按照互联网上的步骤安装了 memcached 库。现在在 mysql 的 bin 文件夹中创建了一个二进制文件
现在我执行命令 memcached 我收到这样的错误
[root@centos1 ~]# /usr/local/mysql/bin/memcached E /usr/local/mysql/lib/ndb_engine.so -e "connectstring=10.10.111.111:1186;role=db_only" -vv -c 20 -u root
2012 年 2 月 24 日 15:21:06 IST NDB Memcache 5.5.19-ndb-7.2.4 启动 [NDB 7.2.4;MySQL 5.5.19] 联系主管理服务器 (10.10.111.111:1186) ... 失败。无法连接到 NDB。关机。分段故障
请帮我解决这个问题
确保您的 configi.ini 文件中至少有 2 个未使用的 API 插槽([mysqld] 部分)(并在添加它们后执行集群的滚动重启)。然后这些插槽将由 memcached 使用。
请注意,您也可以选择在主机上运行 mysqld 进程,并将它们作为集群的一部分(可以通过 SQL 和 NoSQL 访问相同的数据)——您只需要确保在配置中包含足够的 [mysqld] 部分.ini 文件,以便为 memcached 留下几个。
最后我解决了这个问题,现在 memcached 服务运行正常
实际上我从中得到了2分
1)在使用具有 NoSQL 访问权限的 memcached 时,该主机上不应运行任何 mysqld 进程
2) 要启动 Memcached 服务,我们应该为每个现有 API 节点添加 2 个额外的 API 节点,并在添加节点后执行 ROLLING RESTART
就像我在那个带有 mysqld 进程的 2 API 节点中有 3 个 API 节点,另一个未启动
[mysqld(API)] 3 个节点 id=4 @10.10.221.157 (mysql-5.5.19 ndb-7.2.4) id=5(未连接,接受来自 10.10.223.174 的连接)id=6 @10.10。 221.254 (mysql-5.5.19 ndb-7.2.4)
现在为每个 api 添加 2 个节点,现在状态变为
[mysqld(API)] 9 个节点 id=4 @10.10.221.157 (mysql-5.5.19 ndb-7.2.4) id=5(未连接,接受来自 10.10.223.174 的连接)id=6 @10.10。 221.254 (mysql-5.5.19 ndb-7.2.4) id=7(未连接,接受来自任何主机的连接)id=8(未连接,接受来自任何主机的连接)id=9(未连接,接受来自任何主机的连接主机)id=10(未连接,接受来自任何主机的连接)id=11(未连接,接受来自任何主机的连接)id=12(未连接,接受来自任何主机的连接)
现在执行滚动重启现在节点状态变为
ndb_mgm> 显示
集群配置
[ndbd(NDB)] 2 个节点 id=2 @10.10.221.160 (mysql-5.5.19 ndb-7.2.4, Nodegroup: 0, Master) id=3 @10.10.221.254 (mysql-5.5.19 ndb -7.2.4,节点组:0)
[ndb_mgmd(MGM)] 1 个节点 id=1 @10.12.200.117 (mysql-5.5.19 ndb-7.2.4)
[mysqld(API)] 9 个节点 id=4 @10.10.221.157 (mysql-5.5.19 ndb-7.2.4) id=5(未连接,接受来自 10.10.223.174 的连接)id=6 @10.10。 221.254 (mysql-5.5.19 ndb-7.2.4) id=7 @10.10.221.254 (mysql-5.5.19 ndb-7.2.4) id=8 @10.10.221.157 (mysql-5.5.19 ndb-7.2.4 ) id=9 @10.10.221.157 (mysql-5.5.19 ndb-7.2.4) id=10 @10.10.221.254 (mysql-5.5.19 ndb-7.2.4) id=11 (未连接,接受任何连接主机)id=12(未连接,接受来自任何主机的连接)
现在使用命令从 10.10.223.174 节点启动 memcached 服务 /usr/local/mysql/bin/memcached -E /usr/local/mysql/lib/ndb_engine.so -e "connectstring=10.12.200.117:1186;role=db -only;debug=true" -vv -u root
现在它开始没有任何错误
现在所有节点的状态
ndb_mgm> 显示
集群配置
[ndbd(NDB)] 2 个节点 id=2 @10.10.221.160 (mysql-5.5.19 ndb-7.2.4, Nodegroup: 0, Master) id=3 @10.10.221.254 (mysql-5.5.19 ndb -7.2.4,节点组:0)
[ndb_mgmd(MGM)] 1 个节点 id=1 @10.12.200.117 (mysql-5.5.19 ndb-7.2.4)
[mysqld(API)] 9 个节点 id=4 @10.10.221.157 (mysql-5.5.19 ndb-7.2.4) id=5 @10.10.223.174 (mysql-5.5.19 ndb-7.2.4) id =6 @10.10.221.254 (mysql-5.5.19 ndb-7.2.4) id=7 @10.10.221.254 (mysql-5.5.19 ndb-7.2.4) id=8 @10.10.221.157 (mysql-5.5.19 ndb-7.2.4) id=9 @10.10.221.157 (mysql-5.5.19 ndb-7.2.4) id=10 @10.10.221.254 (mysql-5.5.19 ndb-7.2.4) id=11 @10.10。 223.174 (mysql-5.5.19 ndb-7.2.4) id=12 @10.10.223.174 (mysql-5.5.19 ndb-7.2.4)
现在我可以试用链接 http://www.clusterdb.com/mysql-cluster/scalabale-persistent-ha-nosql-memcache-storage-using-mysql-cluster/中的示例
现在工作正常
感谢关于 Deepak M
对于之前的 ERROR 找到了解决方案,但现在出现新的 ERROR
因为它的 NoSQL 访问不应该在该节点上运行任何 mysqld 进程,所以我停止了 mysqld 进程并执行了相同的命令
喜欢
谁能帮我解决这个问题
感谢 adv Deepak M