1. 在开发工具总配置文件中配置URI后,启动程序无法连接mongodb,uri如下:
spring.data.mongodb.uri : mongodb://name:password@ip:27017/dbname ,
但是如下配置(无用户名和密码)可以正常连接,uri如下:
spring.data.mongodb.uri : mongodb://ip:27017/dbname
2. MongoVUE客户端输入用户名和密码连接mongodb失败,不输入用户名和密码时连接成功。
解决:
修改配置文件:
vi /etc/mongod.conf ,找到#security: 取消注释,修改为:
security:
authorization: enabled #注意缩进,缩进参照配置文件其他配置,要不有可能会启动不成 功。
重启mongodb:
docker stop container_id
docker start container_id #container_id : mongodb对应的id
结果:
1. 启动项目时可以正常连接mongodb成功
2. 如果mongovue客户端连接还是不成功,可能是客户端和服务端版本问题,请自行百度解 决。
说明:
此类的问题没有标准解决方案,因为个人的 *** 作执行命令的过程都不一样,如果未能解决你的问题,请再深入研究,此方案针对本人的问题已解决。以上过程省略了创建用户的过程,此过程自行 *** 作。
安装版本: db version v4.2.6
MongoDB默认安装并没有开启用户名密码登录,这样太不安全。首先开启一个无需验证用户的MongoDB服务后,进入MongoDB的shell控制台创建用户:
创建用户后,关闭连接,进入正题:
安装路径: D:PROGRA~1\MongoDB\Server\4.2\bin\
配置文件中添加 authorization 项 ,配置文件地址如下,没有可创建 D:PROGRA~1\MongoDB\Server\4.2\bin\mongod.cfg
配置文件内容如下:
配置好之后注册服务:
启动服务:
net start MongoDB
遇到的问题:
Error1:
F CONTROL [main] Failed global initialization: BadValue: dbPath requires an absolute file path with Windows services
Error2:
Error parsing YAML config file: yaml-cpp: error at line 2
以上都是配置文件配置问题,注意文件中不要出现单引号,双引号之类的;
配置项每层缩进都是4个空格,不要用tab缩进
Error3:
控制台显示服务未注册
这个一般是注册服务的命令有引号错误或者路径错误,检查有没有少斜线。正常的注册完服务并启动时,会显示服务已开启。
新开窗口进入mongodb的shell控制台验证:
参考链接:
Mongodb学习(4)通过配置文件启动mongod
windows系统,MongoDB开启用户验证
解决“Error parsing YAML
权限认证已ok
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)