-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MongoDB无法启动或启动后无法正常使用的讨论(启动失败、用户未注册等问题看这) #823
Comments
openssl rand -base64 128 > ./mongodb/keyFile
command: --replSet rs0 --bind_ip_all --keyFile /data/mongodb/keyFile
volumes:
- /share/Container/mongodb/keyFile:/data/mongodb/keyFile
# Enter the container
docker exec -it mongo bash
# Connect to the database and complete the verification
mongo
use admin
db.auth('username','password')
# Initialize the replica set, note that the host should be changed to the actual IP of your own machine
rs.initiate({
_id: "rs0",
members: [
{ _id: 0, host: "192.168.31.91:27017" }
]
}) |
|
需要把docker compose手动更新一下 |
|
我是提示用户未注册,按照教程来了一遍,也没啥用 |
因为mongodb没正常启动 |
大神,那该怎么弄啊,哈哈 |
非常感谢,问题解决了,不过需要在你这教程基础上再加上两行命令,修改下keyfile的权限 |
非常感谢,上面的方法已经解决 |
谢谢,这个方法已经解决。我之前差一步更改文件的所有权限。 |
You're right. I forgot it. |
感谢,还好有这个命令,不然启动不了容器 |
|
完全没看懂这个命令要怎么使用 |
|
尝试此方法、以及帮助文档提供的部署流程后,仍然无法正常启动mongo容器。 |
感谢答复🙏,使用chmod 999 命令后可以正常启动mongo容器了。 |
|
统一回复不熟 docker 的同学。副本未成功启用会造成几种现象:
按前面讨论修改,仍无效的可能:
如果 chown 999:root mongodb.key 仍提示无权限,先检查文件拥有者是否正确了,如果已经正确了的话可能就是不同内核的镜像有区别(不太可能),自行谷歌解决。 centos7,ubuntu20 22测试均有效。 |
|
看到很多人在更新4.6.8时遇到了麻烦,我特意写了个更新教程:https://begs.cn/tools/ai/3217.html |
按照教程来了一遍成功登录,解决了“用户未注册”的问题 |
windows下不支持某些指令,哪怕执行成功也不会生效; mongo不升级的话,删除创建的应用会提示错误。其他的我没发现有影响的。 |
|
windows下不能修改权限的问题,修改一下docker-compose.yml可解决 mongo:
image: mongo:5.0.18
# image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18 # 阿里云
container_name: mongo
ports:
- 27017:27017
networks:
- fastgpt
command: mongod --keyFile /data/mongodb.key --replSet rs0
environment:
# 默认的用户名和密码,只有首次允许有效
- MONGO_INITDB_ROOT_USERNAME=myname
- MONGO_INITDB_ROOT_PASSWORD=mypassword
volumes:
- ./mongo/data:/data/db
- ./mongodb.key:/data/mongodb.key
entrypoint:
- bash
- -c
- |
chmod 400 /data/mongodb.key
chown 999:999 /data/mongodb.key
exec docker-entrypoint.sh $$@ |
感谢感谢,我试下看 |
可行。刚刚测试过了。再次感谢! |
|
如果从4.6.7升级到4.6.8的过程中执行了官网的操作 后续还想让外网访问数据库,再次执行rs.initiate操作不会重写现有的配置,可以使用 操作如下: 在进行任何这些更改之前,建议备份任何关键数据。 |
|
1 |
|
wsl部署,第一次运行没问题,后面重启就报Operation auth_codes.findOne() buffering timed out after 10000ms错误是什么原因 |
|
用docker 启动数据库后,获取源代码,用源代码链接数据库 就报这个的错误了 @229250919 |
|
mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18
container_name: mongotest
restart: always
ports:
- 27017:27017
networks:
- fastgpt
command: mongod --keyFile /data/mongodb.key --replSet rs0
environment:
- MONGO_INITDB_ROOT_USERNAME=myusername
- MONGO_INITDB_ROOT_PASSWORD=mypassword
volumes:
- ./mongo/data:/data/db
entrypoint:
- bash
- -c
- |
openssl rand -base64 128 > /data/mongodb.key
chmod 400 /data/mongodb.key
chown 999:999 /data/mongodb.key
exec docker-entrypoint.sh $$@进一步修改,直接也不需要在外面创建 mongokey 了。 |
|
前几天试用最新版本的时候在mongoDB 上遇到一些问题,将经验总结一下,申明这些经验只适用于 Macbook M 处理器。
|
在mac需要把root换成admin |
|
如果本地连接服务器的MongoDB是正常的,但是代码连接getaddrinfo ENOTFOUND mongo错误,可以设置&directConnection=true参数 |
|
我正常初始化了,可是在知识库里面添加时候提示null value in column "tmb_id" of relation "modeldata" violates not-null constraint,重新初始化也不行。谁知道怎么办。 |
|
一个mongo副本集配置问题 还要恶心几代人? |
|
最新部署文件已加入全自动化。命令没有环境差异。不是内核太垃圾导致数据库无法启动的,都能直接运行。 |
这个问题我解决了,不是MongoDB的问题,是PG的问题,进入PG数据库,然后修改表: 然后就解决了。如果还有其他字段提示唯空,那就再修改下相关表的字段。 |
请问给以给下具体配置吗?我是macbook m3,不太会 |
必须给你赞一个👍👍👍,搞了2个小时,登录一直失败 此外,后来的同学请务必按照龚老师的教程来,千万不要自作聪明,我的config.json没复制龚老师的,就一直有问题,感谢龚老师的教程💕💕💕 |
|
@HotelEnglish 哥,你的链接不行了 |
|
我再添加一种情形,会导致mongodb连接不上。 当使用 非sudo账户 使用命令 需要sudo -i 之后的账户,启动 就可以了。然后再重启,就会发现mongodb可以连上。 |















例行检查
你的版本
问题描述
使用docker compose部署初始化mongo副本集提示This node was not started with the replSet option
复现步骤
按照教程操作,在第四步初始化 Mongo 副本集中,
执行
初始化副本集。
rs.initiate({

_id: "rs0",
members: [
{ _id: 0, host: "mongo:27017" }
]
})
报错
相关截图
The text was updated successfully, but these errors were encountered: