uri: mongodb://jack:123456@localhost://27017 数据库访问其他的写法

你提供的 MongoDB 配置存在语法错误(uri 中多了一个 //),正确的配置格式有多种写法,可根据需要选择:

1. 标准 URI 完整写法(推荐)

明确指定数据库名和认证信息,修复后的正确格式:

yaml 复制代码
spring:
  data:
    mongodb:
      # 格式:mongodb://用户名:密码@主机:端口/数据库名?认证参数
      uri: mongodb://jack:123456@localhost:27017/yh_cms?authSource=admin
  • authSource=admin:指定认证数据库(默认是要连接的数据库,若账号在 admin 库创建必须加此参数)

2. 拆分参数写法(更清晰)

将 URI 拆分为多个独立参数,适合复杂配置:

yaml 复制代码
spring:
  data:
    mongodb:
      host: localhost    # 主机地址
      port: 27017        # 端口(默认27017可省略)
      database: yh_cms   # 数据库名
      username: jack     # 用户名
      password: 123456   # 密码
      authentication-database: admin  # 认证数据库(可选,默认同database)

3. 带集群和额外参数的写法(多节点场景)

若连接 MongoDB 集群或需要指定读写偏好:

yaml 复制代码
spring:
  data:
    mongodb:
      uri: mongodb://jack:123456@host1:27017,host2:27017/yh_cms?authSource=admin&readPreference=primaryPreferred
  • 多节点用逗号分隔
  • readPreference=primaryPreferred:优先从主节点读取

注意事项

  1. 原配置中 uri: mongodb://jack:123456@localhost://27017 错误在于 localhost://27017,正确应为 localhost:27017(单冒号)
  2. 若 MongoDB 未启用认证,可省略用户名密码:uri: mongodb://localhost:27017/yh_cms
  3. 生产环境建议添加 maxPoolSize 等连接池参数:&maxPoolSize=50

根据你的场景选择合适的写法即可,拆分参数写法更易维护,URI 写法更简洁。

相关推荐
heartbeat..1 小时前
Spring AOP 全面详解(通俗易懂 + 核心知识点 + 完整案例)
java·数据库·spring·aop
麦聪聊数据3 小时前
MySQL并发与锁:从“防止超卖”到排查“死锁”
数据库·sql·mysql
AC赳赳老秦4 小时前
DeepSeek 私有化部署避坑指南:敏感数据本地化处理与合规性检测详解
大数据·开发语言·数据库·人工智能·自动化·php·deepseek
YMatrix 官方技术社区5 小时前
YMatrix 存储引擎解密:MARS3 存储引擎如何超越传统行存、列存实现“时序+分析“场景性能大幅提升?
开发语言·数据库·时序数据库·数据库架构·智慧工厂·存储引擎·ymatrix
辞砚技术录6 小时前
MySQL面试题——索引2nd
数据库·mysql·面试
linweidong6 小时前
C++thread pool(线程池)设计应关注哪些扩展性问题?
java·数据库·c++
欧亚学术7 小时前
突发!刚刚新增17本期刊被剔除!
数据库·论文·sci·期刊·博士·scopus·发表
oMcLin7 小时前
如何在Oracle Linux 8.4上搭建并优化Kafka集群,确保高吞吐量的实时数据流处理与消息传递?
linux·oracle·kafka
黑白极客7 小时前
怎么给字符串字段加索引?日志系统 一条更新语句是怎么执行的
java·数据库·sql·mysql·引擎
大厂技术总监下海8 小时前
数据湖加速、实时数仓、统一查询层:Apache Doris 如何成为现代数据架构的“高性能中枢”?
大数据·数据库·算法·apache