MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Hubungkan ke beberapa host mongo db dan autentikasi menggunakan database yang berbeda di boot musim semi

Menurut dokumentasi format URI string koneksi adalah:

mongodb://[username:[email protected]]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

/database bagian digambarkan sebagai:

Anda telah menyiapkan URI seperti ini:

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

Di log Anda, kami dapat melihat baris:

Exception authenticating MongoCredential{mechanism=null, userName='content_rw', source='contenttest', password=<hidden>, mechanismProperties={}}

Di MongoCredential.java source digambarkan sebagai:

Jadi sepertinya Anda telah menyiapkan database otentikasi sebagai /contenttest dan bukan sebagai:

spring.data.mongodb.authentication-database=admin

Saya pikir Anda harus menghapus nama database dari URI dan mungkin spring.data.mongodb.authentication-database properti, karena admin database digunakan secara default.

Lihat juga ini:

Baris ini seharusnya menarik dalam hal pengaturan database aplikasi:

spring.data.mongodb.database=test # Database name.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB :kerangka kerja agregasi :$cocok antar bidang

  2. OpenShift Mengakses Pod Mongodb dari Pod lain

  3. Postgres 9.4 jsonb menanyakan operator dasar

  4. Boot Musim Semi dengan MongoTemplate

  5. MongoDB / Geojson $geointersects masalah