Podle dokumentace formát URI připojovacího řetězce je:
mongodb://[username:[email protected]]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
/database
část je popsána jako:
Identifikátor URI jste nastavili takto:
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
Ve vašich protokolech vidíme řádek:
Exception authenticating MongoCredential{mechanism=null, userName='content_rw', source='contenttest', password=<hidden>, mechanismProperties={}}
V MongoCredential.java
source
je popsán jako:
Zdá se tedy, že jste autentizační databázi nastavili jako /contenttest
a ne jako:
spring.data.mongodb.authentication-database=admin
Myslím, že byste měli odstranit název databáze z URI a pravděpodobně spring.data.mongodb.authentication-database
vlastnost, protože admin
databáze se používá ve výchozím nastavení.
Podívejte se také na toto:
Tento řádek by měl být zajímavý z hlediska nastavení databáze aplikace:
spring.data.mongodb.database=test # Database name.