MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Kết nối với nhiều máy chủ mongo db và xác thực bằng cơ sở dữ liệu khác trong khởi động mùa xuân

Theo tài liệu định dạng URI chuỗi kết nối là:

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

/database một phần được mô tả là:

Bạn đã thiết lập URI như thế này:

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

Trong nhật ký của bạn, chúng tôi có thể thấy dòng:

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

Trong MongoCredential.java nguồn source được mô tả là:

Vì vậy, có vẻ như bạn đã thiết lập cơ sở dữ liệu xác thực là /contenttest và không phải là:

spring.data.mongodb.authentication-database=admin

Tôi nghĩ bạn nên xóa tên cơ sở dữ liệu khỏi URI và có thể là spring.data.mongodb.authentication-database thuộc tính, bởi vì admin cơ sở dữ liệu được sử dụng theo mặc định.

Ngoài ra, hãy xem cái này:

Dòng này sẽ thú vị về mặt thiết lập cơ sở dữ liệu ứng dụng:

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



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm thế nào để thực hiện một truy vấn sắp xếp tùy chỉnh trong khởi động mùa xuân cho một kho lưu trữ db mongo?

  2. SpringBoot trong Docker không kết nối với Mongo trong Docker

  3. Lưu trữ System.Type với MongoDb

  4. Thực thi quyền kiểm soát truy cập dựa trên vai trò với ClusterControl

  5. Tạo chỉ mục ký tự đại diện trong MongoDB