License 在 DBPlusEngine-Driver 中的使用 #
背景信息 #
License 功能 | 说明 |
---|---|
限制时长 | 限制 DBPlusEngine 的使用时长 |
限制存储节点数量 | 限制 DBPlusEngine 集群创建存储节点的数量 |
限制计算节点(Proxy) | 限制单个集群中创建创建计算节点(DBPlusEngine-Proxy)的数量 |
限制计算节点(Driver) | 限制单个集群中创建创建计算节点(DBPlusEngine-Driver)的数量 |
限制版本 | 限制集群中 DBPlusEngine 的版本 |
硬件设备的 MAC 地址 | 限制集群中计算节点所在的硬件设备的 MAC 地址 |
配置方式 #
JAVA API #
引入 Maven 依赖 #
<dependency>
<groupId>com.sphere-ex</groupId>
<artifactId>shardingsphere-jdbc-core</artifactId>
<version>${dbplusengine.version}</version>
</dependency>
配置示例 #
类名称:com.sphereex.dbplusengine.license.config.LicenseRuleConfiguration
可配置属性:
名称 | 数据类型 | 说明 |
---|---|---|
license | String | license注册码 |
YAML #
引入 Maven 依赖 #
<dependency>
<groupId>com.sphere-ex</groupId>
<artifactId>shardingsphere-jdbc-core</artifactId>
<version>${dbplusengine.version}</version>
</dependency>
配置示例 #
databaseName:
mode:
dataSources:
rules:
license: xxx
SpringBoot #
引入 Maven 依赖 #
<dependency>
<groupId>com.sphere-ex</groupId>
<artifactId>shardingsphere-jdbc-core-spring-boot-starter</artifactId>
<version>${dbplusengine.version}</version>
</dependency>
配置示例 #
spring.dbplusengine.rules.license: xxx
Spring 命名空间 #
引入 Maven 依赖 #
<dependency>
<groupId>com.sphere-ex</groupId>
<artifactId>shardingsphere-jdbc-core-spring-namespace</artifactId>
<version>${dbplusengine.version}</version>
</dependency>
配置示例 #
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:license="https://www.sphere-ex.com/schema/dbplusengine/license"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
https://www.sphere-ex.com/schema/dbplusengine/license
https://www.sphere-ex.com/schema/dbplusengine/license/license.xsd
">
<license:license id="license" license="xxx"/>
</beans>
后续处理 #
如果出现如下错误请获取最新版 license 并更新 license 至最新状态。
- 无 license 提示
FATAL: License not registered
- license 不完整提示
FATAL: Incomplete license
- license 过期提示
FATAL: License is expired
- 非法 license 提示
ERROR: The xxx exceeds the limit of the license
无 License 或 License 超限后的表现 #
- 可以启动集群无法执行RDL、RUL和RAL,可以执行少量RQL
- 全局放行的 DistSQL
- SHOW STORAGE UNITS
- SHOW *
- COUNT * RULES
- EXPORT DATABASE CONFIGURATION
- CONVERT YAML CONFIGURATION
- REGISTER LICENSE
- 事务相关的标准语句
- 实例数量超限可执行
- SET INSTANCE STATUS
- DB的SQL语句不能执行
License 过期提醒功能 #
当 License 距离过期天数 <=30 天时在集群的计算节点运行日志中会输出 WARN 级别的提示。
提示内容为:
The license of DBPlusEngine will expire in xx day(s)