智慧教务系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

4.1 KiB

school_sys_config 表文档

表概述

表名: school_sys_config
功能: 系统配置管理表,负责管理教务系统中的各种配置参数、系统设置、插件配置等系统级配置信息

字段说明

Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
id	int unsigned	NULL	NO	PRI	NULL	auto_increment	select,insert,update,references	主键
config_key	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	配置项关键字
value	text	utf8mb4_general_ci	YES		NULL		select,insert,update,references	配置值json
status	tinyint	NULL	NO		1		select,insert,update,references	是否启用 1启用 0不启用
create_time	int	NULL	NO		0		select,insert,update,references	创建时间
update_time	int	NULL	NO		0		select,insert,update,references	修改时间
addon	varchar(255)	utf8mb4_general_ci	NO				select,insert,update,references	所属插件

功能用途

主要功能

  • 系统配置管理: 管理系统级别的配置参数和设置
  • 插件配置: 管理各种插件的配置信息和参数
  • 动态配置: 支持运行时动态修改配置而无需重启系统
  • JSON配置: 支持复杂的JSON格式配置数据
  • 配置启用控制: 通过状态字段控制配置的启用和禁用
  • 配置分类: 通过addon字段对配置进行分类管理
  • 配置版本: 通过时间字段跟踪配置的创建和修改历史

业务场景

  • 系统初始化: 系统启动时加载各种配置参数
  • 功能开关: 控制系统功能模块的启用和禁用
  • 参数调优: 动态调整系统运行参数
  • 插件管理: 管理第三方插件的配置信息
  • 多环境配置: 支持不同环境的配置管理
  • 配置备份: 备份和恢复系统配置
  • 配置审计: 跟踪配置变更历史
  • 热更新: 支持配置的热更新和实时生效

关联关系

主要关联表

  • school_campus: 校区信息表 (校区相关配置)
  • school_course: 课程信息表 (课程相关配置)
  • school_personnel: 人员信息表 (权限相关配置)
  • school_pay: 支付信息表 (支付相关配置)
  • sys_addon: 插件管理表 (addon字段关联)
  • sys_log: 系统日志表 (配置变更日志)

关联说明

  • 插件关联: addon字段关联具体的插件或模块
  • 业务配置: 为各业务模块提供配置支持
  • 系统集成: 与第三方系统集成的配置参数
  • 功能控制: 控制各功能模块的行为和参数
  • 日志关联: 配置变更会记录到系统日志中

索引建议

  • 主键索引: id (已存在)
  • 唯一索引: config_key (配置键唯一性)
  • 业务索引:
    • addon (插件配置查询)
    • status (启用状态查询)
  • 复合索引:
    • (addon, status) (插件启用配置查询)
    • (config_key, addon) (插件配置键查询)
    • (status, update_time) (启用配置更新时间查询)
  • 时间索引:
    • create_time (创建时间查询)
    • update_time (更新时间查询)

注意事项

  • 配置键唯一性: config_key需要保证全局唯一性,避免配置冲突
  • JSON格式验证: value字段存储JSON数据,需要验证格式正确性
  • 状态一致性: status字段变更需要同步更新相关业务逻辑
  • 插件归属: addon字段确定配置的归属模块,删除插件时需要清理相关配置
  • 配置缓存: 频繁访问的配置建议使用缓存机制提高性能
  • 配置备份: 重要配置修改前需要备份原始值
  • 权限控制: 配置修改需要严格的权限控制机制
  • 配置验证: 配置值修改时需要验证数据的有效性和合法性
  • 热更新机制: 配置修改后需要通知相关模块重新加载配置
  • 默认值处理: 配置不存在时需要有合理的默认值处理机制
  • 配置分组: 建议通过config_key的命名规范进行配置分组
  • 敏感信息: 敏感配置信息需要加密存储
  • 配置依赖: 某些配置可能存在依赖关系,修改时需要检查依赖
  • 版本兼容: 配置结构变更需要考虑向后兼容性
  • 监控告警: 关键配置变更需要监控和告警机制