Files
yunzerwebsiteallinone/sql/alter_tenant_domain_add_custom.sql
T

40 lines
2.1 KiB
SQL

-- 租户域名表增加「自有域名绑定 + 自动 HTTPS」所需字段(兼容已有数据库)
-- 已存在字段时请跳过对应 ALTER 语句。
-- 对应模型:go/models/system_tenant_domain.go
-- 域名类型:1-平台二级域名(历史数据默认值即为 1)2-租户自有域名
ALTER TABLE `yz_system_tenant_domain`
ADD COLUMN `domain_type` tinyint(1) NOT NULL DEFAULT '1' COMMENT '域名类型 1-平台二级域名 2-自有域名' AFTER `tid`;
-- 证书状态:0-待处理 1-签发中 2-已签发 3-签发失败
ALTER TABLE `yz_system_tenant_domain`
ADD COLUMN `ssl_status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '证书状态 0-待处理 1-签发中 2-已签发 3-失败' AFTER `status`;
ALTER TABLE `yz_system_tenant_domain`
ADD COLUMN `ssl_expire_at` datetime DEFAULT NULL COMMENT '证书到期时间' AFTER `ssl_status`;
ALTER TABLE `yz_system_tenant_domain`
ADD COLUMN `ssl_error` varchar(500) DEFAULT NULL COMMENT '最近一次签发失败原因' AFTER `ssl_expire_at`;
-- DNS 解析校验:0-未检测 1-已通过 2-未通过
ALTER TABLE `yz_system_tenant_domain`
ADD COLUMN `verify_status` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'DNS校验 0-未检测 1-已通过 2-未通过' AFTER `ssl_error`;
ALTER TABLE `yz_system_tenant_domain`
ADD COLUMN `verify_msg` varchar(500) DEFAULT NULL COMMENT '最近一次DNS检测说明' AFTER `verify_status`;
ALTER TABLE `yz_system_tenant_domain`
ADD COLUMN `last_verify_at` datetime DEFAULT NULL COMMENT '最近一次DNS检测时间' AFTER `verify_msg`;
-- 索引:按 Host 查租户是官网渲染的热路径;域名类型用于「同类型只能一条」的判断
-- 注意:这里用普通索引而非唯一索引,避免历史脏数据(含软删重复域名)导致 ALTER 失败;
-- 域名唯一性由应用层 bindCustom / apply 接口校验。
ALTER TABLE `yz_system_tenant_domain`
ADD KEY `idx_full_domain` (`full_domain`);
ALTER TABLE `yz_system_tenant_domain`
ADD KEY `idx_tid_domain_type` (`tid`, `domain_type`);
ALTER TABLE `yz_system_tenant_domain`
ADD KEY `idx_ssl_status` (`ssl_status`);