spring cloud之路_springboot 和 mongdb连接问题
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了spring cloud之路_springboot 和 mongdb连接问题,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2399字,纯文字阅读大概需要4分钟。
内容图文
![spring cloud之路_springboot 和 mongdb连接问题](/upload/InfoBanner/zyjiaocheng/520/ec13930863b44c4fb6c32559bfd5162a.jpg)
出现以上springboot 2.x连接 mongdb 3.x的情况。
直面意思,就是指认证失败。
情况有4种,
1.你的认证方式有问题
2.认证信息有误(用户名密码等配错了)
3.mongodb数据库问题
4.springboot yml配置错误
1.你的认证方式有问题
SCRAM-SHA-1:就是mongodb 3.x之后默认的认证方式,springboot 2.x之后也是可以选择这种方式。
注意:mechanism=SCRAM-SHA-1。如果你不是这种方式,你就要升级你的springboot版本,或者去修改你的mongdb数据库的认证方式/降低mongodb版本。
你用纯javamongodb-driver包测试时,可见com.mongodb.MongoCredential 类下选取的认证方式来源于如下类。
public enum AuthenticationMechanism { GSSAPI("GSSAPI"), PLAIN("PLAIN"), MONGODB_X509("MONGODB-X509"), /** @deprecated */ @Deprecated MONGODB_CR("MONGODB-CR"), SCRAM_SHA_1("SCRAM-SHA-1"), SCRAM_SHA_256("SCRAM-SHA-256"); private static final Map<String, AuthenticationMechanism> AUTH_MAP = new HashMap(); private final String mechanismName; private AuthenticationMechanism(String mechanismName) { this.mechanismName = mechanismName; }
2.认证信息有误(用户名密码等配错了)
如果你手动,改错 数据库名或者用户名密码,你会发现也是会报这个错误。
3.mongdb数据库问题
用户权限问题。正确的用户创建如下:
use mydb #没有数据库会自动创建 #在此数据库下创建用户 db.createUser( { user: "user", pwd: "123456", roles: [ { role: "readWrite", db: "mydb" } ] } ) #重新进入,开启auth参数,认证通过后才能访问数据库 ./mongod -f mongdb.conf --auth db.auth("user","123456") 认证通过后可以操作数据库。
4.springboot yml配置错误
spring: application: name: test data: mongodb: host: 你的Ip username: user password: 123456 database: user port: 1234 #如果你是上面这种配置方式,那么恭喜你。他根本不会成功 #正确配置是如下这种方式 uri: mongodb://user:123456@你的Ip:1234/user
spring cloud之路_springboot 和 mongdb连接问题
标签:style ica auth 升级 hid cloud ODB command 用户
本文系统来源:https://www.cnblogs.com/xzdwn/p/12442061.html
内容总结
以上是互联网集市为您收集整理的spring cloud之路_springboot 和 mongdb连接问题全部内容,希望文章能够帮你解决spring cloud之路_springboot 和 mongdb连接问题所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。