配置中心2.6.0升级至2.7.0帮助手册

配置中心升级帮助手册

说明内容

版本范围:2.6.0至2.7.0;

变更内容:

  • 配置中心整体重新架构
  • 数据接口用bex重构
  • item配置项增加“4已生效”状态
  • 支持自定义树形菜单,增加默认树形菜单接口
  • 增加树状结构统计item数量接口
  • 增加查询发布后需重启服务接口

数据库变更说明

新版数据库ER图总览

koca-config-er-img

表结构变更说明

1、修改 KOCA_CONFIG_INFO 配置信息表 → KOCA_CONFIG_NAMESPACE 应用命名空间信息表 ;

2、修改 KOCA_CONFIG_DATA 配置版本数据表 → KOCA_CONFIG_NAMESPACE_VERSION 命名空间信息表 + KOCA_CONFIG_FILE 文件配置信息表 + KOCA_CONFIG_ITEM 配置项信息表;

3、删除 KOCA_CONFIG_LOG 表;

4、新增 KOCA_CONFIG_AUDIT 操作审计表、KOCA_CONFIG_RELEASE_HISTORY 发布信息历史表、KOCA_CONFIGITEM_COMMIT 历史记录表;

核心字段变更

configCode → namespaceId(数据库生成) configName → namespaceCode configStatus → namespaceStatus configType → namespaceType configVersion → namespaceVersion

数据存储变更说明

2.6.0配置数据存储

KOCA_CONFIG_INFO 表

  • KOCA_CONFIG_INFO 表 与 KOCA_CONFIG_DATA 表为 1 : N 关系;
  • KOCA_CONFIG_INFO 表:存放配置基础信息;

KOCA_CONFIG_DATA 表

  • KOCA_CONFIG_DATA 表:存放配置详细信息(版本、配置类型、状态、及版本对应配置内容)
  • KOCA_CONFIG_DATA 表存放 “文本类型” 和 “文件类型” 配置相关信息;
  • “文本类型” 含yaml、properties、json等

2.7.0配置数据存储

KOCA_CONFIG_NAMESPACE 表

  • KOCA_CONFIG_NAMESPACE 表 与 KOCA_CONFIG_NAMESPACE_VERSION 表为 1 : N 关系;
  • KOCA_CONFIG_NAMESPACE 表:存放配置基础信息;

KOCA_CONFIG_NAMESPACE_VERSION 表

  • KOCA_CONFIG_NAMESPACE_VERSION 表:存放配置版本、版本类型、版本状态信息;
  • KOCA_CONFIG_NAMESPACE_VERSION 表 与 KOCA_CONFIG_ITEM 表为 1 : N 关系;

KOCA_CONFIG_ITEM 表

  • KOCA_CONFIG_ITEM 表存放 “文本类型数据”;
  • 2.6.0版本中,KOCA_CONFIG_ITEM 表存放KEY-VALUE类型数据;
  • 2.7.0中,将yaml、properties、json等文本数据也放入 KOCA_CONFIG_ITEM 表中,其中item_key=“content”、item_value=“yaml、properties等配置内容”;

KOCA_CONFIG_FILE 表

  • KOCA_CONFIG_FILE 表,存储配置文件相关信息;

KOCA_CONFIG_RELEASE 表

  • KOCA_CONFIG_RELEASE 表配置发布信息
  • 发布配置时,KOCA_CONFIG_NAMESPACE_VERSION 中版本类型=“KEY-VALUE”,从 KOCA_CONFIG_ITEM 表中查询多条KEY-VALUE数据,组合成properties全量数据,一同放到 KOCA_CONFIG_RELEASE表中;
  • yaml、properties等文本类型数据,从 KOCA_CONFIG_ITEM 表中查询并发布;
  • 文件类型数据,从 KOCA_CONFIG_FILE 表中查询并发布;

升级操作指引

1、备份原数据

2、准备数据库,将2.7.0基础表、数据入库

3、迁移注意事项

koca_config_namespace < - > koca_config_namespace_version:通过namespace_id关联

koca_config_namespace_version < - > koca_config_item或koca_config_file:通过namespace_version_id关联

旧版主键ID类型(varchar),新版主键ID类型(int:数据库自增)

4、koca_config_info 表 → koca_config_namespace 表:

koca_config_info(

config_name

koca_config_namespace(

namespace_code

其余相同字段平移即可

5、koca_config_data 表 → koca_config_namespace_version 表

koca_config_data(

config_version,

data_type,

config_status

)->

koca_config_namespace_version(

namespace_version,

namespace_type,

namespace_status

其余相同字段平移即可

6、koca_config_data 表 → koca_config_item 表

koca_config_data(

“content”

config_content,

config_status

)->

koca_config_item(

item_key,

item_value,

item_status

其余相同字段平移即可

7、koca_config_data 表 → koca_config_file 表

相同字段平移即可

8、核心数据迁移完毕,检查无误,重新发布对应配置即可