SpringBoot 整合 MongoDB 连接 阿里云MongoDB

 注:spring-boot-starter-data-mongodb 2.7.5;jdk 1.8  阿里云MongoDB是副本集实例的

在网上查找了一番,大多数都是教连接本地mongodb或者linux上的mongodb

阿里云上有java版连接教程,但它不是SpringBoot方法配置的,是手动写死的很不方便。

通过程序代码连接MongoDB副本集实例

下面进行配置,大家根据实际情况参考修改

Maven



    org.springframework.boot
    spring-boot-starter-data-mongodb

注:springboot项目,test以及web maven依赖没有加进去,自行添加好了

yml

spring:
  data:
    mongodb:
      # 方式一
      # uri: mongodb://root:****@dds-0jld06e0ffb****.mongodb.rds.aliyuncs.com:3717/test?authSource=admin
      # 方式二
      host: dds-0jld06e0ffb****.mongodb.rds.aliyuncs.com
      port: 3717
      username: root
      password: ****
      database: ****
      authentication-database: admin
  • password:换成自己的
  • database:想要连接的数据库
  • authenticationDatabase: 需要配置去认证的库,也是需要加(因为我的账号密码信息在admin库里)
  • authSource:authenticationDatabase
  • host:换成自己的host

注:经我测试,url方式连接是密码有特殊字符的需要转译。单独配置password的方式不需要

网上有些教程说password需要加单引号,我这里连接没问题就没有加

如何解决连接串中账号密码包含特殊字符导致连接失败的问题?

连接失败的报错

1、org.springframework.data.mongodb.UncategorizedMongoDbException: Exception authenticating MongoCredential{mechanism=SCRAM-SHA-1.....}

检查password是否正确(url方式需要转译的),authenticationDatabase配置了没,url方式是在连接参数后面拼接authSource

你可能感兴趣的:(后端,mongodb,spring,boot,mongodb,后端,阿里云)