首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL-群集启动失败

问MySQL-群集启动失败
EN

Stack Overflow用户
提问于 2021-05-07 08:03:27
回答 2查看 449关注 0票数 0

这不是我第一次创建ndb集群,但我没有收到这样的问题。

我正在通过mysql团队跟踪本手册。

我使用默认配置回显在这个GitHub存储库中。

当我启动我的ndb_mgmd容器时,它返回以下错误:

代码语言:javascript
复制
$ docker run -d --net=cluster --name=management1 --ip=192.168.0.2 mysql/mysql-cluster ndb_mgmd

我收到的日志是:

代码语言:javascript
复制
$ docker logs management1

它返回下面的行

代码语言:javascript
复制
[Entrypoint] MySQL Docker Image 8.0.24-1.2.2-cluster
[Entrypoint] Starting ndb_mgmd
Failed to open /sys/devices/system/cpu/cpu0/cache/index3/shared_cpu_list: No such file or directory
ndb_mgmd: [ERROR] unknown variable 'user='.
MySQL Cluster Management Server mysql-8.0.24 ndb-8.0.24

容器马上就会离开。我不确定它是否是一个bug,所以我用它来写。

EN

回答 2

Stack Overflow用户

发布于 2021-05-07 10:04:41

是个虫子。

我运行普通回显和-user=是附加到命令行的停靠图像。

代码语言:javascript
复制
$ docker run  -d --net=cluster --name=management1 --ip=192.168.0.2 mysql/mysql-cluster echo
55b11ea72989fad50b29fe199ad54ebe2a919079770d0188512a465699e8a256
$ docker logs management1
[Entrypoint] MySQL Docker Image 8.0.24-1.2.2-cluster
--user=

可能是一些启动MySQL服务器的解决方案,但不适合于Ndb程序。

Edit#1:

在新的对接图像修复完毕之前,您可以尝试下面的解决方法。

当使用--entrypoint=/usr/bin/env启动ndb进程时,它会重写错误的入口点脚本(注意,必须在图像mysql/mysql-cluster之前)。

并使用从https://github.com/mysql/mysql-docker/blob/main/mysql-cluster/8.0/docker-entrypoint.sh入口点脚本中提取的显式命令行选项。

用于管理服务器覆盖入口点并添加-f /etc/mysql-cluster.cnf --nodaemon

代码语言:javascript
复制
$ docker run -d --net=cluster --name=management1 --ip=192.168.0.2 --entrypoint=/usr/bin/env mysql/mysql-cluster ndb_mgmd -f /etc/mysql-cluster.cnf --nodaemon

两个数据节点(我选择ndbmtd而不是ndbd)覆盖入口点并添加--nodaemon

代码语言:javascript
复制
$ docker run -d --net=cluster --name=ndb1 --ip=192.168.0.3 --entrypoint=/usr/bin/env mysql/mysql-cluster ndbmtd --nodaemon

$ docker run -d --net=cluster --name=ndb2 --ip=192.168.0.4 --entrypoint=/usr/bin/env mysql/mysql-cluster ndbmtd --nodaemon

启动mysqld时,不应覆盖入口点,请按手册操作。

Edit#2:

mysql集群对接器映像现在已经修复,提取新映像并重新创建容器。

代码语言:javascript
复制
$ docker pull mysql/mysql-cluster
Using default tag: latest
latest: Pulling from mysql/mysql-cluster
Digest: sha256:a8ae8a4358f0c2f07aa39df046eb81e8f88cb2bebcaaf436c67663b300a1e1fe
Status: Image is up to date for mysql/mysql-cluster:latest
docker.io/mysql/mysql-cluster:latest

$ docker run -d --net=cluster --name=management1 --ip=192.168.0.2 mysql/mysql-cluster ndb_mgmd
715ad773b51b3d8fefcf6230460b6149a0a0226ee604752352b9e88d8dfa5bb8

$ docker logs management1
[Entrypoint] MySQL Docker Image 8.0.25-1.2.3-cluster
[Entrypoint] Starting ndb_mgmd
MySQL Cluster Management Server mysql-8.0.25 ndb-8.0.25
2021-05-12 07:59:21 [MgmtSrvr] INFO     -- The default config directory '/usr/mysql-cluster' does not exist. Trying to create it...
2021-05-12 07:59:21 [MgmtSrvr] INFO     -- Sucessfully created config directory
2021-05-12 07:59:21 [MgmtSrvr] WARNING  -- at line 19: [DB] IndexMemory is deprecated, will use Number bytes on each ndbd(DB) node allocated for storing indexes instead
2021-05-12 07:59:21 [MgmtSrvr] INFO     -- Got initial configuration from '/etc/mysql-cluster.cnf', will try to set it when all
ndb_mgmd(s) started
2021-05-12 07:59:21 [MgmtSrvr] INFO     -- Node 1: Node 1 Connected
2021-05-12 07:59:21 [MgmtSrvr] INFO     -- Id: 1, Command port: *:1186
==INITIAL==
2021-05-12 07:59:21 [MgmtSrvr] INFO     -- MySQL Cluster Management Server mysql-8.0.25 ndb-8.0.25 started
2021-05-12 07:59:22 [MgmtSrvr] INFO     -- Node 1 connected
2021-05-12 07:59:22 [MgmtSrvr] INFO     -- Starting initial configuration change
2021-05-12 07:59:22 [MgmtSrvr] INFO     -- Configuration 1 commited
2021-05-12 07:59:22 [MgmtSrvr] INFO     -- Config change completed! New generation: 1
==CONFIRMED==
票数 1
EN

Stack Overflow用户

发布于 2021-05-07 15:49:13

这证明是一个错误。在被修复之前,你可以做以下几件事:

1-克隆mysql-码头

代码语言:javascript
复制
git clone https://github.com/mysql/mysql-docker.git

2-检查一个较早的标记(1.1.19-cluster已检查并验证)

代码语言:javascript
复制
git checkout 1.1.19-cluster

3.建立图像,并在以后使用。

代码语言:javascript
复制
docker build -t mysql-cluster-customized 8.0/

4-运行管理集群

代码语言:javascript
复制
docker run -d --net=cluster --name=management1 --ip=192.168.0.2 -it  mysql-cluster-customized ndb_mgmd

我希望在mysql 正在修复存储库主管的问题时,这会有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67431118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档