我是Mongo DB的新手,我没有找到任何好的资源/示例。我想要实现的是在我的服务器上运行MongoDB,并启用身份验证。和我的应用程序的数据库,用户可以访问数据。
我已启动并运行mongo,现在尝试连接到db:
spring:
data:
mongodb:
port: 27017
host: <host name>
database: test
但我一直拒绝连接。
com.mongodb.MongoSocketOpenException: Exception opening socket
at com.mongodb.connection.SocketStream.open(SocketStream.java:62) ~[mongodb-driver-core-3.6.3.jar:na]
at com.mongodb.connection.InternalStreamConnection.open(InternalStreamConnection.java:126) ~[mongodb-driver-core-3.6.3.jar:na]
at com.mongodb.connection.DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:114) ~[mongodb-driver-core-3.6.3.jar:na]
at java.base/java.lang.Thread.run(Thread.java:844) [na:na]
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.base/java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:na]
at java.base/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:400) ~[na:na]
at java.base/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:243) ~[na:na]
at java.base/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:225) ~[na:na]
at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:402) ~[na:na]
at java.base/java.net.Socket.connect(Socket.java:591) ~[na:na]
at com.mongodb.connection.SocketStreamHelper.initialize(SocketStreamHelper.java:59) ~[mongodb-driver-core-3.6.3.jar:na]
at com.mongodb.connection.SocketStream.open(SocketStream.java:57) ~[mongodb-driver-core-3.6.3.jar:na]
答案 0 :(得分:1)
有很多资源,包括Spring网站上的入门指南。 MongoDB文档提供了有关如何添加用户和启用身份验证的详细说明。 Spring Boot参考文档描述了如何配置mongodb连接,包括凭证。
但上面的输出显示“Connection refused”。
所以要么你的mongodb实际上没有运行,要么你的配置指向错误的服务器。仔细检查主机名(您决定在问题中隐藏),然后登录到mongodb服务器并检查mongod
进程是否实际正在运行。然后,您可以继续进行身份验证。