• springboot项目nacos作为配置中心


    目录

    nacos安装

    下载

    修改 vim /nacos/bin/startup.sh

    修改vim /nacos/conf/application.properties 

    执行sql 

    启动nacos

    查看日志

    配置项目

    pom

    bootstrap.properties

    默认命名空间


    nacos安装

    下载

    https://github.com/alibaba/nacos/releases/tag/1.1.4

    修改 vim /nacos/bin/startup.sh

    注释这四行,添加一行配置

    #[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
    #[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
    #[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/opt/taobao/java
    #[ ! -e "$JAVA_HOME/bin/java" ] && unset JAVA_HOME
    JAVA_HOME=/usr/local/jdk1.8.0_351

    修改vim /nacos/conf/application.properties 

    spring.datasource.platform=mysql
    db.num=1
    db.url.0=jdbc:mysql://IP:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
    db.user=mysql
    db.password=mysql
     

    执行sql 

    1. create database nacos_config;
    2. use nacos_config;
    3. /******************************************/
    4. /* 数据库全名 = nacos_config */
    5. /* 表名称 = config_info */
    6. /******************************************/
    7. CREATE TABLE `config_info` (
    8. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    9. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    10. `group_id` varchar(255) DEFAULT NULL,
    11. `content` longtext NOT NULL COMMENT 'content',
    12. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
    13. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
    14. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
    15. `src_user` text COMMENT 'source user',
    16. `src_ip` varchar(20) DEFAULT NULL COMMENT 'source ip',
    17. `app_name` varchar(128) DEFAULT NULL,
    18. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
    19. `c_desc` varchar(256) DEFAULT NULL,
    20. `c_use` varchar(64) DEFAULT NULL,
    21. `effect` varchar(64) DEFAULT NULL,
    22. `type` varchar(64) DEFAULT NULL,
    23. `c_schema` text,
    24. PRIMARY KEY (`id`),
    25. UNIQUE KEY `uk_configinfo_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
    26. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info';
    27. /******************************************/
    28. /* 数据库全名 = nacos_config */
    29. /* 表名称 = config_info_aggr */
    30. /******************************************/
    31. CREATE TABLE `config_info_aggr` (
    32. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    33. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    34. `group_id` varchar(255) NOT NULL COMMENT 'group_id',
    35. `datum_id` varchar(255) NOT NULL COMMENT 'datum_id',
    36. `content` longtext NOT NULL COMMENT '内容',
    37. `gmt_modified` datetime NOT NULL COMMENT '修改时间',
    38. `app_name` varchar(128) DEFAULT NULL,
    39. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
    40. PRIMARY KEY (`id`),
    41. UNIQUE KEY `uk_configinfoaggr_datagrouptenantdatum` (`data_id`,`group_id`,`tenant_id`,`datum_id`)
    42. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='增加租户字段';
    43. /******************************************/
    44. /* 数据库全名 = nacos_config */
    45. /* 表名称 = config_info_beta */
    46. /******************************************/
    47. CREATE TABLE `config_info_beta` (
    48. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    49. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    50. `group_id` varchar(128) NOT NULL COMMENT 'group_id',
    51. `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
    52. `content` longtext NOT NULL COMMENT 'content',
    53. `beta_ips` varchar(1024) DEFAULT NULL COMMENT 'betaIps',
    54. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
    55. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
    56. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
    57. `src_user` text COMMENT 'source user',
    58. `src_ip` varchar(20) DEFAULT NULL COMMENT 'source ip',
    59. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
    60. PRIMARY KEY (`id`),
    61. UNIQUE KEY `uk_configinfobeta_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
    62. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_beta';
    63. /******************************************/
    64. /* 数据库全名 = nacos_config */
    65. /* 表名称 = config_info_tag */
    66. /******************************************/
    67. CREATE TABLE `config_info_tag` (
    68. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    69. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    70. `group_id` varchar(128) NOT NULL COMMENT 'group_id',
    71. `tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
    72. `tag_id` varchar(128) NOT NULL COMMENT 'tag_id',
    73. `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
    74. `content` longtext NOT NULL COMMENT 'content',
    75. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
    76. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
    77. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
    78. `src_user` text COMMENT 'source user',
    79. `src_ip` varchar(20) DEFAULT NULL COMMENT 'source ip',
    80. PRIMARY KEY (`id`),
    81. UNIQUE KEY `uk_configinfotag_datagrouptenanttag` (`data_id`,`group_id`,`tenant_id`,`tag_id`)
    82. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_tag';
    83. /******************************************/
    84. /* 数据库全名 = nacos_config */
    85. /* 表名称 = config_tags_relation */
    86. /******************************************/
    87. CREATE TABLE `config_tags_relation` (
    88. `id` bigint(20) NOT NULL COMMENT 'id',
    89. `tag_name` varchar(128) NOT NULL COMMENT 'tag_name',
    90. `tag_type` varchar(64) DEFAULT NULL COMMENT 'tag_type',
    91. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    92. `group_id` varchar(128) NOT NULL COMMENT 'group_id',
    93. `tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
    94. `nid` bigint(20) NOT NULL AUTO_INCREMENT,
    95. PRIMARY KEY (`nid`),
    96. UNIQUE KEY `uk_configtagrelation_configidtag` (`id`,`tag_name`,`tag_type`),
    97. KEY `idx_tenant_id` (`tenant_id`)
    98. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_tag_relation';
    99. /******************************************/
    100. /* 数据库全名 = nacos_config */
    101. /* 表名称 = group_capacity */
    102. /******************************************/
    103. CREATE TABLE `group_capacity` (
    104. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    105. `group_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'Group ID,空字符表示整个集群',
    106. `quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '配额,0表示使用默认值',
    107. `usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用量',
    108. `max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个配置大小上限,单位为字节,0表示使用默认值',
    109. `max_aggr_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '聚合子配置最大个数,,0表示使用默认值',
    110. `max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值',
    111. `max_history_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '最大变更历史数量',
    112. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
    113. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
    114. PRIMARY KEY (`id`),
    115. UNIQUE KEY `uk_group_id` (`group_id`)
    116. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='集群、各Group容量信息表';
    117. /******************************************/
    118. /* 数据库全名 = nacos_config */
    119. /* 表名称 = his_config_info */
    120. /******************************************/
    121. CREATE TABLE `his_config_info` (
    122. `id` bigint(64) unsigned NOT NULL,
    123. `nid` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
    124. `data_id` varchar(255) NOT NULL,
    125. `group_id` varchar(128) NOT NULL,
    126. `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
    127. `content` longtext NOT NULL,
    128. `md5` varchar(32) DEFAULT NULL,
    129. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00',
    130. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00',
    131. `src_user` text,
    132. `src_ip` varchar(20) DEFAULT NULL,
    133. `op_type` char(10) DEFAULT NULL,
    134. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
    135. PRIMARY KEY (`nid`),
    136. KEY `idx_gmt_create` (`gmt_create`),
    137. KEY `idx_gmt_modified` (`gmt_modified`),
    138. KEY `idx_did` (`data_id`)
    139. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='多租户改造';
    140. /******************************************/
    141. /* 数据库全名 = nacos_config */
    142. /* 表名称 = tenant_capacity */
    143. /******************************************/
    144. CREATE TABLE `tenant_capacity` (
    145. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
    146. `tenant_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'Tenant ID',
    147. `quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '配额,0表示使用默认值',
    148. `usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用量',
    149. `max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个配置大小上限,单位为字节,0表示使用默认值',
    150. `max_aggr_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '聚合子配置最大个数',
    151. `max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值',
    152. `max_history_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '最大变更历史数量',
    153. `gmt_create` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '创建时间',
    154. `gmt_modified` datetime NOT NULL DEFAULT '2010-05-05 00:00:00' COMMENT '修改时间',
    155. PRIMARY KEY (`id`),
    156. UNIQUE KEY `uk_tenant_id` (`tenant_id`)
    157. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='租户容量信息表';
    158. CREATE TABLE `tenant_info` (
    159. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    160. `kp` varchar(128) NOT NULL COMMENT 'kp',
    161. `tenant_id` varchar(128) default '' COMMENT 'tenant_id',
    162. `tenant_name` varchar(128) default '' COMMENT 'tenant_name',
    163. `tenant_desc` varchar(256) DEFAULT NULL COMMENT 'tenant_desc',
    164. `create_source` varchar(32) DEFAULT NULL COMMENT 'create_source',
    165. `gmt_create` bigint(20) NOT NULL COMMENT '创建时间',
    166. `gmt_modified` bigint(20) NOT NULL COMMENT '修改时间',
    167. PRIMARY KEY (`id`),
    168. UNIQUE KEY `uk_tenant_info_kptenantid` (`kp`,`tenant_id`),
    169. KEY `idx_tenant_id` (`tenant_id`)
    170. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='tenant_info';
    171. CREATE TABLE users (
    172. username varchar(50) NOT NULL PRIMARY KEY,
    173. password varchar(500) NOT NULL,
    174. enabled boolean NOT NULL
    175. );
    176. CREATE TABLE roles (
    177. username varchar(50) NOT NULL,
    178. role varchar(50) NOT NULL
    179. );
    180. INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);
    181. INSERT INTO roles (username, role) VALUES ('nacos', 'ROLE_ADMIN');

    启动nacos

    sh /mydata/nacos/nacos/bin/startup.sh -m standalone 

    查看日志

    如果没有报错日志,也不能访问页面,切换nacos-logback.xml日志级别,

    cat /mydata/nacos/nacos/logs/start.out

    访问页面

    http://IP:8848/nacos/

    配置项目

    pom

    1. <parent>
    2. <groupId>org.springframework.bootgroupId>
    3. <artifactId>spring-boot-starter-parentartifactId>
    4. <version>2.1.8.RELEASEversion>
    5. <relativePath/>
    6. parent>
    7. <dependency>
    8. <groupId>com.alibaba.cloudgroupId>
    9. <artifactId>spring-cloud-starter-alibaba-nacos-configartifactId>
    10. <version>2.1.0.RELEASEversion>
    11. dependency>
    12. <dependencyManagement>
    13. <dependencies>
    14. <dependency>
    15. <groupId>org.springframework.cloudgroupId>
    16. <artifactId>spring-cloud-dependenciesartifactId>
    17. <version>Greenwich.SR3version>
    18. <type>pomtype>
    19. <scope>importscope>
    20. dependency>
    21. dependencies>
    22. dependencyManagement>

    这个配套是可以启动的,如果版本不配套,可能出现启动服务异常的问题

    版本配套地址:

    https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

    bootstrap.properties

    spring.application.name=gulimall-member
    spring.cloud.nacos.config.server-addr=IP:8848
    #命名空间
    spring.cloud.nacos.config.namespace=1a1cfc4e-a4eb-49eb-9004-655cd0e38613
    #配置分组
    spring.cloud.nacos.config.group=618

    默认命名空间

    启动服务时,会出现

    2022-12-06 00:49:28.379  INFO 9304 --- [           main] c.a.c.n.c.NacosPropertySourceBuilder     : Loading nacos data, dataId: 'gulimall-member.properties', group: 'DEFAULT_GROUP' 

  • 相关阅读:
    ANR及卡顿体验优化
    尚硅谷-Netty篇
    MySQL调优篇:单机数据库如何在高并发场景下健步如飞?
    【面试题】移除数组&&删除重复项&&合并数组
    快速掌握 MyBatis 框架(二)
    【计算机网络Part 2】数据链路层
    sqlmap dolog外带数据
    软件测试|Python Faker库使用指南
    149. SAP UI5 Table 控件数据进行 Excel 导出时如何进行格式控制
    atcoder ABC 232 B~E题解
  • 原文地址:https://blog.csdn.net/qq_41082640/article/details/128195917