Logo
属性配置

背景信息 #

SphereEx-DBPlusEngine-Proxy 提供了丰富的系统配置属性,用户可通过 server.yaml 进行配置。

参数解释 #

名称数据类型说明默认值动态生效
sql-federation-typeString联邦查询执行器类型,包括:NONE,ORIGINAL,ADVANCED。NONE
agent-plugins-enabledboolean是否启用 agent plugin 插件。 TRUE/FALSETRUE
transaction-typeString事务类型。 LOCAL/XA/BASE/MANUALXALOCAL
kernel-executor-sizeint用于设置任务处理线程池的大小。每个 ShardingSphereDataSource 使用一个独立的线程池,同一个 JVM 的不同数据源不共享线程池。infinite
max-connections-size-per-queryint一次查询请求在每个数据库实例中所能使用的最大连接数。1
check-table-meta-data-enabledboolean在程序启动和更新时,是否检查分片元数据的结构一致性。false
proxy-frontend-flush-thresholdint在 ShardingSphere-Proxy 中设置传输数据条数的 IO 刷新阈值。128
proxy-hint-enabledboolean是否允许在 ShardingSphere-Proxy 中使用 Hint。使用 Hint 会将 Proxy 的线程处理模型由 IO 多路复用变更为每个请求一个独立的线程,会降低 Proxy 的吞吐量。false
proxy-backend-query-fetch-sizeintProxy 后端与数据库交互的每次获取数据行数(使用游标的情况下)。数值增大可能会增加 ShardingSphere Proxy 的内存使用。默认值为 -1,代表设置为 JDBC 驱动的最小值。-1
proxy-frontend-executor-sizeintProxy 前端 Netty 线程池线程数量,默认值 0 代表使用 Netty 默认值。0
proxy-backend-executor-suitableString可选选项:OLAP、OLTP。OLTP 选项可能会减少向客户端写入数据包的时间开销,但如果客户端连接数超过 proxy-frontend-executor-size,尤其是执行慢 SQL 时,它可能会增加 SQL 执行的延迟甚至阻塞其他客户端的连接。OLAP
proxy-frontend-max-connectionsint允许连接 Proxy 的最大客户端数量,默认值 0 代表不限制。0
proxy-mysql-default-versionStringProxy 通过配置文件指定 MySQL 的版本号,默认版本:5.7.22。 只有 MySQL 需要配置,客户端识别数据库的协议版本。5.7.22
proxy-default-portStringProxy 通过配置文件指定默认端口。3307
proxy-netty-backlogintProxy 通过配置文件指定默认netty back-log参数。1024
proxy-frontend-database-protocol-typeStringProxy 前端协议类型,支持 MySQL, PostgreSQL, openGauss""
proxy-instance-typeStringProxy 实例类型,可选项:Proxy、SphereEx:Proxy,Proxy 表示云上部署类型,SphereEx:Proxy 表示本地部署类型Proxy
sql-showboolean是否在系统日志中打印 SQL。
打印 SQL 可以帮助开发者快速定位系统问题。日志内容包含:逻辑 SQL,真实 SQL 和 SQL 解析结果。
如果开启配置,日志将使用 Topic ShardingSphere-SQL,系统日志级别是 INFO。
false
sql-simpleboolean是否在系统日志中打印简单风格的 SQL。false
slow-query-logboolean是否开启慢查询 TRUE/FALSEfalse
long-query-timeint慢查询阈值单位ms10
general-query-logboolean是否开启全量日志(审计日志) TRUE/FALSEfalse
system-log-levelString当前计算节点(proxy)的系统日志等级 DEBUG、INFO、WARN、ERRORINFO
system-log-patternString当前计算节点(proxy)的系统日志格式 日志格式可参考Logback Layouts[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n|是
storage-node-heartbeat-interval-millisecondsint用于配置存储节点状态收集间隔,单位毫秒。如果配置等于0,则关闭存储节点状态收集功能。0
meta-data-consistency-enabledboolean用于控制是否开启proxy的 DDL 和 RDL 一致性更新false
proxy-meta-data-collector-enabledboolean用于开启定时任务线程的元数据信息收集TRUE

属性配置可以通过 DistSQL 在线修改。 其中支持动态修改的属性立即生效,不支持动态修改的属性在重启后生效。

配置示例 #

完整配置示例请参考:


#props:
#  max-connections-size-per-query: 1
#  kernel-executor-size: 16  # Infinite by default.
#  proxy-frontend-flush-threshold: 128  # The default value is 128.
#  proxy-hint-enabled: false
#  sql-show: false
#  check-table-metadata-enabled: false
#  show-process-list-enabled: false
#    # Proxy backend query fetch size. A larger value may increase the memory usage of ShardingSphere Proxy.
#    # The default value is -1, which means set the minimum value for different JDBC drivers.
#  proxy-backend-query-fetch-size: -1
#  check-duplicate-table-enabled: false
#  proxy-frontend-executor-size: 0 # Proxy frontend executor size. The default value is 0, which means let Netty decide.
#    # Available options of proxy backend executor suitable: OLAP(default), OLTP. The OLTP option may reduce time cost of writing packets to client, but it may increase the latency of SQL execution
#    # and block other clients if client connections are more than `proxy-frontend-executor-size`, especially executing slow SQL.
#  proxy-backend-executor-suitable: OLAP
#  proxy-frontend-max-connections: 0 # Less than or equal to 0 means no limitation.
#  sql-federation-enabled: false
#    # Available proxy backend driver type: JDBC (default), ExperimentalVertx
#  proxy-backend-driver-type: JDBC
#  proxy-mysql-default-version: 5.7.22 # In the absence of schema name, the default version will be used.
#  proxy-default-port: 3307 # Proxy default port.
#  proxy-netty-backlog: 1024 # Proxy netty backlog.