跳至主要內容

将配置文件导入Nacos

大约 5 分钟快速启动快速启动将配置文件导入Nacos

将配置文件导入Nacos

  1. 登录nacos控制台,http://localhost:8848/nacos/open in new window,访问 命名空间 页面,点击表格右上角 新建命名空间 按钮

    • 命名空间ID: 2d09714b-5693-46bc-83ab-8c8d0e192f76

    • 命名空间名称: lamp-datasource-max

    • 描述: lamp-datasource-max

    新建命名空间
    新建命名空间
  2. 修改项目配置文件 config-dev.propertiesopen in new window 中的 nacos.namespace 为上一步新建的命名空间ID

    修改项目NacosId
    修改项目NacosId
  3. 修改 config-dev.propertiesopen in new windownacos.xxxdatabase.type

    nacos.ip=127.0.0.1
    nacos.port=8848
    nacos.namespace=52721b73-260b-4fee-bb2a-561ea12f1a7f
    nacos.username=nacos
    nacos.password=nacos
    
    # mysql.yml  oracle.yml sqlserver.yml
    database.type=mysql.yml
    
  4. 将项目的配置文件导入Nacos的 配置管理 - 配置列表

nacos_config_export.zipopen in new window 压缩包一次性导入nacos。

敲黑板

  • 这里导入的文件必须是nacos中导出压缩包, 自己解压zip修改里面的配置后在压缩成zip后导入可能会报错!
  • 一定要将配置文件导入或新建到第一步新建的命名空间下,千万不要导入public空间了!
  1. 在 nacos 中,修改 mysql.yml、 oracle.yml 或 sqlserver.yml 的 数据库配置信息。

提示

datasource模式和column、none 模式,该配置文件有区别。 因为datasource使用dynamic代理数据源,column、none直接使用druid数据源

  • lamp-datasource-max

    lamp:
      mysql: &db-mysql
        username: 'root'
        password: 'root'
        driverClassName: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://127.0.0.1:3306/lamp_ds_c_defaults?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useUnicode=true&useSSL=false&autoReconnect=true&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&nullCatalogMeansCurrent=true
      database:  
        multiTenantType: DATASOURCE_COLUMN   # 可选值 DATASOURCE_COLUMN COLUMN
    
  • lamp-column-max

    lamp:
      mysql: &db-mysql
        db-type: mysql
        validation-query: SELECT 'x'
        filters: stat,wall
        username: 'root'
        password: 'root' 
        driverClassName: com.p6spy.engine.spy.P6SpyDriver
        url: jdbc:p6spy:mysql://127.0.0.1:3306/lamp_column?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useUnicode=true&useSSL=false&autoReconnect=true&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&nullCatalogMeansCurrent=true
      database:  
        multiTenantType: COLUMN  # 固定填 COLUMN
    
  • lamp-cloud

    lamp:
      mysql: &db-mysql
        filters: stat,wall
        db-type: mysql
        validation-query: SELECT 'x'
        username: 'root'
        password: 'root'
        driverClassName: com.p6spy.engine.spy.P6SpyDriver
        url: jdbc:p6spy:mysql://127.0.0.1:3306/lamp_none?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useUnicode=true&useSSL=false&autoReconnect=true&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&nullCatalogMeansCurrent=true
      database:  
          multiTenantType: NONE  # 固定填 NONE
    
    

&db-mysql、&db-sqlserver、&db-oracle 是什么意思?

yml 中的锚点引用。 点我了解锚点引用open in new window

  1. 在 nacos 中,修改 redis.yml 的IP、端口、账号密码。

    lamp:
      cache:
        type: REDIS   # 本地不想启动redis,可以修改为  CAFFEINE
      redis:
         ip: 127.0.0.1
         port: 16379
         password: 'SbtyMveYNfLzTks7H0apCmyStPzWJqjy'    # redis 的密码,没有配置密码的改成单引号的空字符串: ''(这个密码是明文,没有加密)
         database: 0
    
  2. 在 nacos 中,修改 rabbitmq.yml 的IP、端口、账号密码。

    lamp:
      rabbitmq:
         # 系统默认没有使用rabbitmq, 所以enabled设置为false就不用配置。
         enabled: false
         ip: 127.0.0.1
         port: 5672
         username: lamp
         password: lamp
    

至此, 项目需要调整的配置全部完成, 其他参数用默认的即可, 二次开发建议理解清楚每个配置的含义。


配置文件介绍

本项目4.0+版本有11个配置文件,分成2类:

common.yml
mysql.yml
oracle.yml
sqlserver.yml
redis.yml
rabbitmq.yml
lamp-oauth-server.yml
lamp-base-server.yml
lamp-gateway-server.yml
lamp-system-server.yml
lamp-monitor.yml
  1. 通用配置:common.yml、redis.yml、mysql.yml、sqlserver.yml、oracle.yml、rabbitmq.yml
  • common.yml: 所有的服务所有的环境 公共的配置,如果有个别服务或者个别环境需要个性化配置, 只需要在每个服务的配置文件中单独修改即可。
  • mysql.yml、sqlserver.yml、oracle.yml: 配置 数据库链接信息、Mybatis Plus 配置信息等
  • redis.yml: 配置 redis 链接信息
  • rabbitmq.yml:配置 rabbtit 链接信息
  1. 项目配置:lamp-xxx-server.yml (如:lamp-base-server.yml、lamp-system-server.yml等) 在lamp-xxx-server.yml 里面配置每个服务的特有配置。比如lamp-oauth-server.yml里面会配置swagger扫描路径、项目启动端口、token有效期等信息。

小技巧

  1. 若一个项目有不同的开发环境、不同的开发人员共用一个nacos, 可以采用命名空间隔离、Group隔离、配置文件隔离等3种方式来实现。
  2. 配置文件的加载优先级为: bootstrap-dev.yml -> bootstrap.yml -> application-dev.yml ->application.yml -> lamp-xxx-server-dev.yml -> lamp-xxx-server.yml
  3. 配置文件的覆盖规则与加载优先级刚好相反。
👆🏻👆🏻👆🏻上面是评论区,对系统、本页文档什么疑问,可以在评论区留言。
❗️❗️❗️若评论区无法显示,请使用"手机热点"或"科学上网"。