Enligt dokumentationen anslutningssträngens URI-format är:
mongodb://[username:[email protected]]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
/database
del beskrivs som:
Du har ställt in URI:n så här:
spring.data.mongodb.uri = mongodb://content_rw:<secret password>@a.mongo.db:27017,b.mongo.db:27017,c.mongo.db:27017/contenttest?wtimeoutMS=300&connectTimeoutMS=500&socketTimeoutMS=200
I dina loggar kan vi se raden:
Exception authenticating MongoCredential{mechanism=null, userName='content_rw', source='contenttest', password=<hidden>, mechanismProperties={}}
I MongoCredential.java
source
beskrivs som:
Så det ser ut som att du har ställt in autentiseringsdatabasen som /contenttest
och inte som:
spring.data.mongodb.authentication-database=admin
Jag tycker att du ska ta bort databasnamnet från URI:n och förmodligen spring.data.mongodb.authentication-database
egenskap, eftersom admin
databas används som standard.
Titta också på det här:
Den här raden borde vara intressant när det gäller att sätta upp applikationsdatabasen:
spring.data.mongodb.database=test # Database name.