diff --git a/docs-cn/14-reference/08-server-config/08-server-config.md b/docs-cn/14-reference/08-server-config/08-server-config.md index 328d0d96cde7375ee39b5774e49829a73f5cdd31..8697c8950aabd0274c7ce79cb5ba5f183e169b0a 100644 --- a/docs-cn/14-reference/08-server-config/08-server-config.md +++ b/docs-cn/14-reference/08-server-config/08-server-config.md @@ -1,7 +1,9 @@ --- -title: 服务端配置 +title: 配置参数 --- +## 为服务端指定配置文件 + TDengine 系统后台服务由 taosd 提供,可以在配置文件 taos.cfg 里修改配置参数,以满足不同场景的需求。配置文件的缺省位置在/etc/taos 目录,可以通过 taosd 命令行执行参数 -c 指定配置文件目录。比如,指定配置文件位于`/home/user` 这个目录: ``` @@ -14,28 +16,56 @@ taosd -c /home/user taosd -C ``` -下面仅仅列出一些重要的配置参数,更多的参数请看配置文件里的说明。而且这些参数的缺省配置都是可以工作的,一般无需设置。 +## 为客户端指定配置文件 + +TDengine 系统的前台交互客户端应用程序为 taos,以及应用驱动,它与 taosd 共享同一个配置文件 taos.cfg。运行 taos 时,使用参数-c 指定配置文件目录,如 taos -c /home/cfg,表示使用/home/cfg/目录下的 taos.cfg 配置文件中的参数,缺省目录是/etc/taos。更多 taos 的使用方法请见帮助信息 `taos --help`。 + +**2.0.10.0 之后版本支持命令行以下参数显示当前客户端参数的配置** + +```bash +taos -C +``` + +```bash +taos --dump-config +``` + +# 配置参数详细列表 + +:::note +本节内容覆盖产品的配置参数,适用于服务端的参数按其对产品行为的影响进行分类,这其中有部分参数也同时适用于客户端;但有少量参数仅适用于客户端,这部分参数进行了单独归类。 + +::: + :::note 配置文件参数修改后,需要重启*taosd*服务,或客户端应用才能生效。 ::: -## 首要参数 +## 连接相关 -### firstEP +### firstEp | 属性 | 说明 | | -------- | ----------------------------------------------------- | | 适用范围 | 服务端和客户端均适用 | -| 含义 | taosd 启动时,主动连接的集群中首个 dnode 的 end point | +| 含义 | taosd 或者 taos 启动时,主动连接的集群中首个 dnode 的 end point | | 缺省值 | localhost:6030 | +### secondEP + +| 属性 | 说明 | +| -------- | ---------------------------------------------------------------------------- | +| 适用范围 | 服务端和客户端均适用 | +| 含义 | taosd 或者 taos 启动时,如果 firstEp 连接不上,尝试连接集群中第二个 dnode 的 end point | +| 缺省值 | 无 | + ### fqdn | 属性 | 说明 | | -------- | ----------------------------------------------------------------- | -| 适用范围 | 服务端和客户端均适用 | +| 适用范围 | 仅服务端适用 | | 含义 | 数据节点的 FQDN。如果习惯 IP 地址访问,可设置为该节点的 IP 地址。 | | 缺省值 | 缺省为操作系统配置的第一个 hostname。 | | 补充说明 | 这个参数值的长度需要控制在 96 个字符以内。 | @@ -44,10 +74,10 @@ taosd -C | 属性 | 说明 | | -------- | ------------------------------------------------------------------------------------------------------------------- | -| 适用范围 | 服务端和客户端均适用 | +| 适用范围 | 仅服务端适用 | | 含义 | taosd 启动后,对外服务的端口号 | | 缺省值 | 6030 | -| 补充说明 | RESTful 服务使用的端口号是在此基础上+11,即默认值为 6041(注意 2.4 及后续版本使用 taosAdapter 提供 RESTful 接口)。 | +| 补充说明 | RESTful 服务在2.4.0.0之前(不含)由taosd提供,默认端口为 6041; 在2.4.0.0 及后续版本由 taosAdapter,默认端口为6041 | :::note 对于端口,TDengine 会使用从 serverPort 起 13 个连续的 TCP 和 UDP 端口号,请务必在防火墙打开。因此如果是缺省配置,需要打开从 6030 到 6042 共 13 个端口,而且必须 TCP 和 UDP 都打开。(详细的端口情况请参见下表) @@ -66,32 +96,36 @@ taosd -C | UDP | 6030-6034 | 客户端与服务端之间通讯。 | 随 serverPort 端口变化。 | | UDP | 6035-6039 | 多节点集群的节点间通讯。 | 随 serverPort 端口变化。 +### maxShellConns -### logDir - -| 属性 | 说明 | -| -------- | -------------------------------------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | 日志文件目录,客户端和服务器的运行日志将写入该目录 | -| 缺省值 | /var/log/taos | +| 属性 | 说明 | +| -------- | ----------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 一个 dnode 容许的连接数 | +| 取值范围 | 10-50000000 | +| 缺省值 | 5000 | -### dataDir +### maxConnections -| 属性 | 说明 | -| -------- | ------------------------------------------ | -| 适用范围 | 仅服务端适用 | -| 含义 | 数据文件目录,所有的数据文件都将写入该目录 | -| 缺省值 | /var/lib/taos | +| 属性 | 说明 | +| -------- | ------------------------------------------------------------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 一个数据库连接所容许的 dnode 连接数 | +| 取值范围 | 1-100000 | +| 缺省值 | 5000 | +| 补充说明 | 实际测试下来,如果默认没有配,选 50 个 worker thread 会产生 Network unavailable | -### arbitrator +### rpcForceTcp -| 属性 | 说明 | -| -------- | ------------------------ | -| 适用范围 | 仅服务端适用 | -| 含义 | 系统中裁决器的 end point | -| 缺省值 | 空 | +| 属性 | 说明 | +| -------- | --------------------------------------------------- | +| 适用范围 | 服务端和客户端均适用 | +| 含义 | 强制使用 TCP 传输 | +| 取值范围 | 0: 不开启 1: 开启 | +| 缺省值 | 0 | +| 补充说明 | 在网络比较差的环境中,建议开启。
2.0 版本新增。 | -## 开关类 +## 监控相关 ### monitor @@ -102,51 +136,56 @@ taosd -C | 取值范围 | 0:关闭监控服务, 1:激活监控服务。 | | 缺省值 | 0 | -### vnodeBak +### monitorInterval + +| 属性 | 说明 | +| -------- | -------------------------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 监控数据库记录系统参数(CPU/内存)的时间间隔 | +| 单位 | 秒 | +| 取值范围 | 1-600 | +| 缺省值 | 30 | -| 属性 | 说明 | -| -------- | -------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 删除 vnode 时是否备份 vnode 目录 | -| 取值范围 | 0:否,1:是 | -| 缺省值 | 1 | -### elemetryRePorting +### telemetryRePorting | 属性 | 说明 | | -------- | ---------------------------------------- | | 适用范围 | 仅服务端适用 | | 含义 | 是否允许 TDengine 采集和上报基本使用信息 | -| 取值范围 | 0:不允许
1:允许 | +| 取值范围 | 0:不允许 1:允许 | | 缺省值 | 1 | -### balance +## 查询相关 -| 属性 | 说明 | -| -------- | ---------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 是否启动负载均衡 | -| 取值范围 | 0,1 | -| 缺省值 | 1 | +### queryBufferSize -### stream +| 属性 | 说明 | +| -------- | ------------------------------------------------------------------------------------------------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 为所有并发查询占用保留的内存大小。 | +| 单位 | MB | +| 缺省值 | 无 | +| 补充说明 | 计算规则可以根据实际应用可能的最大并发数和表的数字相乘,再乘 170 。
(2.0.15 以前的版本中,此参数的单位是字节) | -| 属性 | 说明 | -| -------- | ------------------------------ | -| 适用范围 | 仅服务端适用 | -| 含义 | 是否启用连续查询(流计算功能) | -| 取值范围 | 0:不允许
1:允许 | -| 缺省值 | 1 | +### ratioOfQueryCores -### enableCoreFile +| 属性 | 说明 | +| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- | +| 适用范围 | 仅服务端适用 | +| 含义 | 设置查询线程的最大数量。 | +| 缺省值 | 1 | +| 补充说明 | 最小值 0 表示只有 1 个查询线程
最大值 2 表示最大建立 2 倍 CPU 核数的查询线程。
默认为 1,表示最大和 CPU 核数相等的查询线程。
该值可以为小数,即 0.5 表示最大建立 CPU 核数一半的查询线程。 | -| 属性 | 说明 | -| -------- | ------------------------------------------------------------------------------------------------------------------------------------------ | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | 是否开启服务 crash 时生成 core 文件 | -| 取值范围 | 0:否,1:是 | -| 缺省值 | 1 | -| 补充说明 | 不同的启动方式,生成 core 文件的目录如下:1、systemctl start taosd 启动:生成的 core 在根目录下
2、手动启动,就在 taosd 执行目录下。 | +### maxNumOfDistinctRes + +| 属性 | 说明 | +| -------- | -------------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 允许返回的 distinct 结果最大行数 | +| 取值范围 | 默认值为 10 万,最大值 1 亿 | +| 缺省值 | 10 万 | +| 补充说明 | 2.3 版本新增。 | | ## 区域相关 @@ -158,6 +197,43 @@ taosd -C | 含义 | 时区 | | 缺省值 | 从系统中动态获取当前的时区设置 | +:::info +为应对多时区的数据写入和查询问题,TDengine 采用 Unix 时间戳(Unix Timestamp)来记录和存储时间戳。Unix 时间戳的特点决定了任一时刻不论在任何时区,产生的时间戳均一致。需要注意的是,Unix 时间戳是在客户端完成转换和记录。为了确保客户端其他形式的时间转换为正确的 Unix 时间戳,需要设置正确的时区。 + + 在 Linux 系统中,客户端会自动读取系统设置的时区信息。用户也可以采用多种方式在配置文件设置时区。例如: + + ``` + timezone UTC-8 + timezone GMT-8 + timezone Asia/Shanghai + ``` + + 均是合法的设置东八区时区的格式。但需注意,Windows 下并不支持 `timezone Asia/Shanghai` 这样的写法,而必须写成 `timezone UTC-8`。 + + 时区的设置对于查询和写入 SQL 语句中非 Unix 时间戳的内容(时间戳字符串、关键词 now 的解析)产生影响。例如: + + ```sql + SELECT count(*) FROM table_name WHERE TS<'2019-04-11 12:01:08'; + ``` + + 在东八区,SQL 语句等效于 + + ```sql + SELECT count(*) FROM table_name WHERE TS<1554955268000; + ``` + + 在 UTC 时区,SQL 语句等效于 + + ```sql + SELECT count(*) FROM table_name WHERE TS<1554984068000; + ``` + + 为了避免使用字符串时间格式带来的不确定性,也可以直接使用 Unix 时间戳。此外,还可以在 SQL 语句中使用带有时区的时间戳字符串,例如:RFC3339 格式的时间戳字符串,2013-04-12T15:52:01.123+08:00 或者 ISO-8601 格式时间戳字符串 2013-04-12T15:52:01.123+0800。上述两个字符串转化为 Unix 时间戳不受系统所在时区的影响。 + + 启动 taos 时,也可以从命令行指定一个 taosd 实例的 end point,否则就从 taos.cfg 读取。 + +::: + ### locale | 属性 | 说明 | @@ -166,6 +242,15 @@ taosd -C | 含义 | 系统区位信息及编码格式 | | 缺省值 | 系统中动态获取,如果自动获取失败,需要用户在配置文件设置或通过 API 设置 | +:::info + TDengine 为存储中文、日文、韩文等非 ASCII 编码的宽字符,提供一种专门的字段类型 nchar。写入 nchar 字段的数据将统一采用 UCS4-LE 格式进行编码并发送到服务器。需要注意的是,编码正确性是客户端来保证。因此,如果用户想要正常使用 nchar 字段来存储诸如中文、日文、韩文等非 ASCII 字符,需要正确设置客户端的编码格式。 + + 客户端的输入的字符均采用操作系统当前默认的编码格式,在 Linux 系统上多为 UTF-8,部分中文系统编码则可能是 GB18030 或 GBK 等。在 docker 环境中默认的编码是 POSIX。在中文版 Windows 系统中,编码则是 CP936。客户端需要确保正确设置自己所使用的字符集,即客户端运行的操作系统当前编码字符集,才能保证 nchar 中的数据正确转换为 UCS4-LE 编码格式。 + + 在 Linux 中 locale 的命名规则为: <语言>\_<地区>.<字符集编码> 如:zh_CN.UTF-8,zh 代表中文,CN 代表大陆地区,UTF-8 表示字符集。字符集编码为客户端正确解析本地字符串提供编码转换的说明。Linux 系统与 Mac OSX 系统可以通过设置 locale 来确定系统的字符编码,由于 Windows 使用的 locale 中不是 POSIX 标准的 locale 格式,因此在 Windows 下需要采用另一个配置参数 charset 来指定字符编码。在 Linux 系统中也可以使用 charset 来指定字符编码。 + +::: + ### charset | 属性 | 说明 | @@ -174,8 +259,53 @@ taosd -C | 含义 | 字符集编码 | | 缺省值 | 系统中动态获取,如果自动获取失败,需要用户在配置文件设置或通过 API 设置 | +:::info +如果配置文件中不设置 charset,在 Linux 系统中,taos 在启动时候,自动读取系统当前的 locale 信息,并从 locale 信息中解析提取 charset 编码格式。如果自动读取 locale 信息失败,则尝试读取 charset 配置,如果读取 charset 配置也失败,则中断启动过程。 + + 在 Linux 系统中,locale 信息包含了字符编码信息,因此正确设置了 Linux 系统 locale 以后可以不用再单独设置 charset。例如: + + ``` + locale zh_CN.UTF-8 + ``` + + 在 Windows 系统中,无法从 locale 获取系统当前编码。如果无法从配置文件中读取字符串编码信息,taos 默认设置为字符编码为 CP936。其等效在配置文件中添加如下配置: + + ``` + charset CP936 + ``` + + 如果需要调整字符编码,请查阅当前操作系统使用的编码,并在配置文件中正确设置。 + + 在 Linux 系统中,如果用户同时设置了 locale 和字符集编码 charset,并且 locale 和 charset 的不一致,后设置的值将覆盖前面设置的值。 + + ``` + locale zh_CN.UTF-8 + charset GBK + ``` + + 则 charset 的有效值是 GBK。 + + ``` + charset GBK + locale zh_CN.UTF-8 + ``` + + charset 的有效值是 UTF-8。 + + 日志的配置参数,与 server 的配置参数完全一样。 + +::: + ## 存储相关 +### dataDir + +| 属性 | 说明 | +| -------- | ------------------------------------------ | +| 适用范围 | 仅服务端适用 | +| 含义 | 数据文件目录,所有的数据文件都将写入该目录 | +| 缺省值 | /var/lib/taos | + ### cache | 属性 | 说明 | @@ -266,16 +396,6 @@ taosd -C | 缺省值 | 0 | | 补充说明 | 2.1.2.0 版本之前、2.0.20.7 版本之前在 taos.cfg 文件中不支持此参数。 - -### minimalLogDirGB - -| 属性 | 说明 | -| -------- | -------------------------------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | 当日志文件夹的磁盘大小小于该值时,停止写日志 | -| 单位 | GB | -| 缺省值 | 0.1 | - ### minimalTmpDirGB | 属性 | 说明 | @@ -294,8 +414,25 @@ taosd -C | 单位 | GB | | 缺省值 | 0.1 | +### vnodeBak + +| 属性 | 说明 | +| -------- | -------------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 删除 vnode 时是否备份 vnode 目录 | +| 取值范围 | 0:否,1:是 | +| 缺省值 | 1 | + ## 集群相关 +### numOfMnodes + +| 属性 | 说明 | +| -------- | ------------------ | +| 适用范围 | 仅服务端适用 | +| 含义 | 系统中管理节点个数 | +| 缺省值 | 3 | + ### replica | 属性 | 说明 | @@ -322,6 +459,32 @@ taosd -C | 含义 | dnode 的可选角色 | | 取值范围 | 0:any(既可作为 mnode,也可分配 vnode)
1:mgmt(只能作为 mnode,不能分配 vnode)
2:dnode(不能作为 mnode,只能分配 vnode) | | 缺省值 | 0 | +### balance + +| 属性 | 说明 | +| -------- | ---------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 是否启动负载均衡 | +| 取值范围 | 0,1 | +| 缺省值 | 1 | + +### balanceInterval + +| 属性 | 说明 | +| -------- | ------------------------------------------------ | +| 适用范围 | 仅服务端适用 | +| 含义 | 管理节点在正常运行状态下,检查负载均衡的时间间隔 | +| 单位 | 秒 | +| 取值范围 | 1-30000 | +| 缺省值 | 300 | + +### arbitrator + +| 属性 | 说明 | +| -------- | ------------------------ | +| 适用范围 | 仅服务端适用 | +| 含义 | 系统中裁决器的 end point,其格式如firstEp | +| 缺省值 | 空 | ## 时间相关 @@ -375,27 +538,6 @@ taosd -C | 取值范围 | 1-8640000 | | 缺省值 | 7200 | -### minSlidingTime - -| 属性 | 说明 | -| -------- | ----------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 最小滑动窗口时长 | -| 单位 | 毫秒 | -| 取值范围 | 10-1000000 | -| 缺省值 | 10 | -| 补充说明 | 支持 us 补值后,这个值就是 1us 了。 | - -### minIntervalTime - -| 属性 | 说明 | -| -------- | -------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 时间窗口最小值 | -| 单位 | 毫秒 | -| 取值范围 | 1-1000000 | -| 缺省值 | 10 | - ### maxTmerCtrl | 属性 | 说明 | @@ -406,16 +548,6 @@ taosd -C | 取值范围 | 8-2048 | | 缺省值 | 512 | -### monitorInterval - -| 属性 | 说明 | -| -------- | -------------------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 监控数据库记录系统参数(CPU/内存)的时间间隔 | -| 单位 | 秒 | -| 取值范围 | 1-600 | -| 缺省值 | 30 | - ### offlineThreshold | 属性 | 说明 | @@ -426,47 +558,8 @@ taosd -C | 取值范围 | 5-7200000 | | 缺省值 | 86400\*10(10 天) | -### maxStreamCompDelay - -| 属性 | 说明 | -| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| 适用范围 | 仅服务端适用 | -| 含义 | 连续查询启动最大延迟 | -| 单位 | 毫秒 | -| 取值范围 | 10-1000000000 | -| 缺省值 | 20000 | -| 补充说明 | 为避免多个 stream 同时执行占用太多系统资源,程序中对 stream 的执行时间人为增加了一些随机的延时。
maxFirstStreamCompDelay 是 stream 第一次执行前最少要等待的时间。
streamCompDelayRatio 是延迟时间的计算系数,它乘以查询的 interval 后为延迟时间基准。
maxStreamCompDelay 是延迟时间基准的上限。
实际延迟时间为一个不超过延迟时间基准的随机值。
stream 某次计算失败后需要重试,retryStreamCompDelay 是重试的等待时间基准。
实际重试等待时间为不超过等待时间基准的随机值。 | - -### maxFirstStreamCompDelay - -| 属性 | 说明 | -| -------- | -------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 第一次连续查询启动最大延迟 | -| 单位 | 毫秒 | -| 取值范围 | 10-1000000000 | -| 缺省值 | 10000 | - -### retryStreamCompDelay - -| 属性 | 说明 | -| -------- | -------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 连续查询重试等待间隔 | -| 单位 | 毫秒 | -| 取值范围 | 10-1000000000 | -| 缺省值 | 10 | - -### streamCompDelayRatio - -| 属性 | 说明 | -| -------- | -------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 连续查询的延迟时间计算系数 | -| 取值范围 | 0.1-0.9 | -| 缺省值 | 0.1 | -## 数量相关 +## 性能调优 ### numOfThreadsPerCore @@ -486,14 +579,6 @@ taosd -C | 缺省值 | 1 | | 补充说明 | 该值可以为小数,即 0.5 表示最大建立 CPU 核数一半的查询线程。 | -### numOfMnodes - -| 属性 | 说明 | -| -------- | ------------------ | -| 适用范围 | 仅服务端适用 | -| 含义 | 系统中管理节点个数 | -| 缺省值 | 3 | - ### maxVgroupsPerDb | 属性 | 说明 | @@ -511,41 +596,47 @@ taosd -C | 含义 | 每个 vnode 中能够创建的最大表个数 | | 缺省值 | 1000000 | -### maxNumOfOrderedRes +### minTablesPerVnode -| 属性 | 说明 | -| -------- | -------------------------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | 支持超级表时间排序允许的最多记录数限制 | -| 缺省值 | 10 万 | +| 属性 | 说明 | +| -------- | --------------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 每个 vnode 中必须创建表的最小数量 | +| 缺省值 | 1000 | -### maxShellConns +### tableIncStepPerVnode -| 属性 | 说明 | -| -------- | ----------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 一个 dnode 容许的连接数 | -| 取值范围 | 10-50000000 | -| 缺省值 | 5000 | +| 属性 | 说明 | +| -------- | ----------------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 每个 vnode 中超过最小表数,i.e. minTablesPerVnode, 后递增步长 | +| 缺省值 | 1000 | -### maxConnections +### maxNumOfOrderedRes + +| 属性 | 说明 | +| -------- | -------------------------------------- | +| 适用范围 | 服务端和客户端均适用 | +| 含义 | 支持超级表时间排序允许的最多记录数限制 | +| 缺省值 | 10 万 | -| 属性 | 说明 | -| -------- | ------------------------------------------------------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 一个数据库连接所容许的 dnode 连接数 | -| 取值范围 | 1-100000 | -| 缺省值 | 5000 | -| 补充说明 | 实际测试下来,如果默认没有配,选 50 个 worker thread 会产生 Network unavailable | ### mnodeEqualVnodeNum | 属性 | 说明 | | -------- | ---------------------------------- | | 适用范围 | 仅服务端适用 | -| 含义 | 一个 mnode 等同于 vnode 消耗的个数 | +| 含义 | 将一个 mnode 等同于 vnode 消耗的个数 | | 缺省值 | 4 | +### numOfCommitThreads + +| 属性 | 说明 | +| -------- | ---------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 设置写入线程的最大数量 | +| 缺省值 | | + ## 压缩相关 ### comp @@ -557,6 +648,14 @@ taosd -C | 取值范围 | 0:关闭,1:一阶段压缩,2:两阶段压缩 | | 缺省值 | 2 | +### tsdbMetaCompactRatio + +| 属性 | 说明 | +| -------- | -------------------------------------------------------------- | +| 含义 | tsdb meta 文件中冗余数据超过多少阈值,开启 meta 文件的压缩功能 | +| 取值范围 | 0:不开启,[1-100]:冗余数据比例 | +| 缺省值 | 0 | + ### compressMsgSize | 属性 | 说明 | @@ -608,8 +707,90 @@ taosd -C | 缺省值 | 0.0000000000000001 | | 补充说明 | 小于此值的浮点数尾数部分将被截取 | +## 流计算相关 + +### stream + +| 属性 | 说明 | +| -------- | ------------------------------ | +| 适用范围 | 仅服务端适用 | +| 含义 | 是否启用连续查询(流计算功能) | +| 取值范围 | 0:不允许
1:允许 | +| 缺省值 | 1 | + +### minSlidingTime + +| 属性 | 说明 | +| -------- | ----------------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 最小滑动窗口时长 | +| 单位 | 毫秒 | +| 取值范围 | 10-1000000 | +| 缺省值 | 10 | +| 补充说明 | 支持 us 补值后,这个值就是 1us 了。 | + +### minIntervalTime + +| 属性 | 说明 | +| -------- | -------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 时间窗口最小值 | +| 单位 | 毫秒 | +| 取值范围 | 1-1000000 | +| 缺省值 | 10 | + +### maxStreamCompDelay + +| 属性 | 说明 | +| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| 适用范围 | 仅服务端适用 | +| 含义 | 连续查询启动最大延迟 | +| 单位 | 毫秒 | +| 取值范围 | 10-1000000000 | +| 缺省值 | 20000 | + +### maxFirstStreamCompDelay + +| 属性 | 说明 | +| -------- | -------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 第一次连续查询启动最大延迟 | +| 单位 | 毫秒 | +| 取值范围 | 10-1000000000 | +| 缺省值 | 10000 | + +### retryStreamCompDelay + +| 属性 | 说明 | +| -------- | -------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 连续查询重试等待间隔 | +| 单位 | 毫秒 | +| 取值范围 | 10-1000000000 | +| 缺省值 | 10 | + +### streamCompDelayRatio + +| 属性 | 说明 | +| -------- | -------------------------- | +| 适用范围 | 仅服务端适用 | +| 含义 | 连续查询的延迟时间计算系数,实际延迟时间为本参数乘以计算时间窗口 | +| 取值范围 | 0.1-0.9 | +| 缺省值 | 0.1 | + +:::info +为避免多个 stream 同时执行占用太多系统资源,程序中对 stream 的执行时间人为增加了一些随机的延时。
maxFirstStreamCompDelay 是 stream 第一次执行前最少要等待的时间。
streamCompDelayRatio 是延迟时间的计算系数,它乘以查询的 interval 后为延迟时间基准。
maxStreamCompDelay 是延迟时间基准的上限。
实际延迟时间为一个不超过延迟时间基准的随机值。
stream 某次计算失败后需要重试,retryStreamCompDelay 是重试的等待时间基准。
实际重试等待时间为不超过等待时间基准的随机值。 + +::: + ## HTTP 相关 +:::note +HTTP服务在2.4.0.0(不含)以前的版本中由taosd提供,在2.4.0.0以后(含)由taosAdapter提供。 +本节的配置参数仅在2.4.0.0(不含)以前的版本中生效。如果您使用的是2.4.0.0(含)及以后的版本请参考[文档](https://www.taosdata.com/cn/documentation/tools/adapter)。 + +::: + ### http | 属性 | 说明 | @@ -624,7 +805,7 @@ taosd -C | 属性 | 说明 | | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | | 适用范围 | 仅服务端适用 | -| 含义 | 内部使用,记录通过 RESTFul 接口,产生的 SQL 调用。taosAdapter 配置或有不同,请参考相应[文档](https://www.taosdata.com/cn/documentation/tools/adapter)。 | +| 含义 | 记录通过 RESTFul 接口,产生的 SQL 调用。 | | 缺省值 | 0 | | 补充说明 | 生成的文件(httpnote.0/httpnote.1),与服务端日志所在目录相同。 | @@ -657,6 +838,24 @@ taosd -C ## 日志相关 +### logDir + +| 属性 | 说明 | +| -------- | -------------------------------------------------- | +| 适用范围 | 服务端和客户端均适用 | +| 含义 | 日志文件目录,客户端和服务器的运行日志将写入该目录 | +| 缺省值 | /var/log/taos | + +### minimalLogDirGB + +| 属性 | 说明 | +| -------- | -------------------------------------------- | +| 适用范围 | 服务端和客户端均适用 | +| 含义 | 当日志文件夹的磁盘大小小于该值时,停止写日志 | +| 单位 | GB | +| 缺省值 | 0.1 | + + ### numOfLogLines | 属性 | 说明 | @@ -855,138 +1054,6 @@ taosd -C | 取值范围 | 同上 | | 缺省值 | | -## 内部配置 - -### secondEP - -| 属性 | 说明 | -| -------- | ---------------------------------------------------------------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | taosd 启动时,如果 firstEp 连接不上,尝试连接集群中第二个 dnode 的 end point | -| 缺省值 | 无 | - -### scriptDir - -| 属性 | 说明 | -| -------- | ------------ | -| 适用范围 | 仅服务端适用 | -| 含义 | | -| 缺省值 | | - -### balanceInterval - -| 属性 | 说明 | -| -------- | ------------------------------------------------ | -| 适用范围 | 仅服务端适用 | -| 含义 | 管理节点在正常运行状态下,检查负载均衡的时间间隔 | -| 单位 | 秒 | -| 取值范围 | 1-30000 | -| 缺省值 | 300 | - -### minTablesPerVnode - -| 属性 | 说明 | -| -------- | --------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 每个 vnode 中必须创建的最小表个数 | -| 缺省值 | 1000 | - -### tableIncStepPerVnode - -| 属性 | 说明 | -| -------- | ----------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 每个 vnode 中超过最小表数后递增步长 | -| 缺省值 | 1000 | - -### mqttHostName - -| 属性 | 说明 | -| -------- | -------------------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | mqtt uri | -| 缺省值 | | -| 补充说明 | mqtt://username:password@hostname:1883/taos/ | - -### mqttPort - -| 属性 | 说明 | -| -------- | ---------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | mqtt client name | -| 缺省值 | | -| 补充说明 | 1883 | - -### mqttTopic - -| 属性 | 说明 | -| -------- | ------------ | -| 适用范围 | 仅服务端适用 | -| 含义 | | -| 缺省值 | | -| 补充说明 | /test | - -### mqtt - -| 属性 | 说明 | -| -------- | --------------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 服务器内部的 mqtt 服务开关。 | -| 取值范围 | 0:关闭 mqtt 服务, 1:激活 mqtt 服务。 | -| 缺省值 | 0 | - -### telegrafUseFieldNum - -| 属性 | 说明 | -| -------- | ---- | -| 适用范围 | | -| 含义 | | -| 缺省值 | | - -### gitinfo - -| 属性 | 说明 | -| -------- | -------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | | -| 取值范围 | 1 | -| 缺省值 | | - -### gitinfoofInternal - -| 属性 | 说明 | -| -------- | -------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | | -| 取值范围 | 2 | -| 缺省值 | | - -### Buildinfo - -| 属性 | 说明 | -| -------- | -------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | | -| 取值范围 | 3 | -| 缺省值 | | - -### version - -| 属性 | 说明 | -| -------- | -------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | | -| 取值范围 | 4 | -| 缺省值 | | - -### numOfCommitThreads - -| 属性 | 说明 | -| -------- | ---------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 设置写入线程的最大数量 | -| 缺省值 | | - ## 仅客户端适用 ### maxSQLLength @@ -1015,7 +1082,11 @@ taosd -C | 含义 | Taos shell 中 binary 和 nchar 字段的显示宽度上限,超过此限制的部分将被隐藏 | | 取值范围 | 5 - | | 缺省值 | 30 | -| 补充说明 | 实际上限按以下规则计算:如果字段值的长度大于 maxBinaryDisplayWidth,则显示上限为 **字段名长度** 和 **maxBinaryDisplayWidth** 的较大者。
否则,上限为 **字段名长度** 和 **字段值长度** 的较大者。
可在 shell 中通过命令 set max_binary_display_width nn 动态修改此选项 | + +:::info +实际上限按以下规则计算:如果字段值的长度大于 maxBinaryDisplayWidth,则显示上限为 **字段名长度** 和 **maxBinaryDisplayWidth** 的较大者。
否则,上限为 **字段名长度** 和 **字段值长度** 的较大者。
可在 shell 中通过命令 set max_binary_display_width nn 动态修改此选项 + +::: ### maxWildCardsLength @@ -1027,14 +1098,6 @@ taosd -C | 缺省值 | 100 | | 补充说明 | 2.1.6.1 版本新增。 | -### tsdbMetaCompactRatio - -| 属性 | 说明 | -| -------- | -------------------------------------------------------------- | -| 含义 | tsdb meta 文件中冗余数据超过多少阈值,开启 meta 文件的压缩功能 | -| 取值范围 | 0:不开启,[1-100]:冗余数据比例 | -| 缺省值 | 0 | - ### clientMerge | 属性 | 说明 | @@ -1055,42 +1118,12 @@ taosd -C ## 其他 -### queryBufferSize - -| 属性 | 说明 | -| -------- | ------------------------------------------------------------------------------------------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 为所有并发查询占用保留的内存大小。 | -| 单位 | MB | -| 缺省值 | | -| 补充说明 | 计算规则可以根据实际应用可能的最大并发数和表的数字相乘,再乘 170 。
(2.0.15 以前的版本中,此参数的单位是字节) | - -### ratioOfQueryCores - -| 属性 | 说明 | -| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- | -| 适用范围 | 仅服务端适用 | -| 含义 | 设置查询线程的最大数量。 | -| 缺省值 | | -| 补充说明 | 最小值 0 表示只有 1 个查询线程
最大值 2 表示最大建立 2 倍 CPU 核数的查询线程。
默认为 1,表示最大和 CPU 核数相等的查询线程。
该值可以为小数,即 0.5 表示最大建立 CPU 核数一半的查询线程。 | | - -### rpcForceTcp - -| 属性 | 说明 | -| -------- | --------------------------------------------------- | -| 适用范围 | 服务端和客户端均适用 | -| 含义 | 强制使用 TCP 传输 | -| 取值范围 | 0: 不开启 1: 开启 | -| 缺省值 | 0 | -| 补充说明 | 在网络比较差的环境中,建议开启。
2.0 版本新增。 | - -### maxNumOfDistinctRes - -| 属性 | 说明 | -| -------- | -------------------------------- | -| 适用范围 | 仅服务端适用 | -| 含义 | 允许返回的 distinct 结果最大行数 | -| 取值范围 | 默认值为 10 万,最大值 1 亿 | -| 缺省值 | 10 万 | -| 补充说明 | 2.3 版本新增。 | +### enableCoreFile +| 属性 | 说明 | +| -------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| 适用范围 | 服务端和客户端均适用 | +| 含义 | 是否开启服务 crash 时生成 core 文件 | +| 取值范围 | 0:否,1:是 | +| 缺省值 | 1 | +| 补充说明 | 不同的启动方式,生成 core 文件的目录如下:1、systemctl start taosd 启动:生成的 core 在根目录下
2、手动启动,就在 taosd 执行目录下。 | \ No newline at end of file diff --git a/docs-cn/14-reference/08-server-config/_category_.yml b/docs-cn/14-reference/08-server-config/_category_.yml index e05fbeb578ceb525ae80f3d50c3e018df13bfa56..8d3cfcc8d0d8966bf1354f9ece83faea105f9c7a 100644 --- a/docs-cn/14-reference/08-server-config/_category_.yml +++ b/docs-cn/14-reference/08-server-config/_category_.yml @@ -1 +1 @@ -label: 服务端配置 \ No newline at end of file +label: 配置参数 \ No newline at end of file diff --git a/docs-cn/14-reference/09-client-config/09-client-config.md b/docs-cn/14-reference/09-client-config/09-client-config.md deleted file mode 100644 index c32861c6f76b4b5a090e3d52498243a27672136a..0000000000000000000000000000000000000000 --- a/docs-cn/14-reference/09-client-config/09-client-config.md +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: 客户端及应用驱动配置 ---- - -TDengine 系统的前台交互客户端应用程序为 taos,以及应用驱动,它与 taosd 共享同一个配置文件 taos.cfg。运行 taos 时,使用参数-c 指定配置文件目录,如 taos -c /home/cfg,表示使用/home/cfg/目录下的 taos.cfg 配置文件中的参数,缺省目录是/etc/taos。更多 taos 的使用方法请见帮助信息 `taos --help`。本节主要说明 taos 客户端应用在配置文件 taos.cfg 文件中使用到的参数。 - -**2.0.10.0 之后版本支持命令行以下参数显示当前客户端参数的配置** - -```bash -taos -C 或 taos --dump-config -``` - -客户端及应用驱动配置参数列表及解释 - -- firstEp: taos 启动时,主动连接的集群中第一个 taosd 实例的 end point, 缺省值为 localhost:6030。 - -- secondEp: taos 启动时,如果 firstEp 连不上,将尝试连接 secondEp。 - -- locale:系统区位信息及编码格式。 - - 默认值:系统中动态获取,如果自动获取失败,需要用户在配置文件设置或通过 API 设置。 - - TDengine 为存储中文、日文、韩文等非 ASCII 编码的宽字符,提供一种专门的字段类型 nchar。写入 nchar 字段的数据将统一采用 UCS4-LE 格式进行编码并发送到服务器。需要注意的是,编码正确性是客户端来保证。因此,如果用户想要正常使用 nchar 字段来存储诸如中文、日文、韩文等非 ASCII 字符,需要正确设置客户端的编码格式。 - - 客户端的输入的字符均采用操作系统当前默认的编码格式,在 Linux 系统上多为 UTF-8,部分中文系统编码则可能是 GB18030 或 GBK 等。在 docker 环境中默认的编码是 POSIX。在中文版 Windows 系统中,编码则是 CP936。客户端需要确保正确设置自己所使用的字符集,即客户端运行的操作系统当前编码字符集,才能保证 nchar 中的数据正确转换为 UCS4-LE 编码格式。 - - 在 Linux 中 locale 的命名规则为: <语言>\_<地区>.<字符集编码> 如:zh_CN.UTF-8,zh 代表中文,CN 代表大陆地区,UTF-8 表示字符集。字符集编码为客户端正确解析本地字符串提供编码转换的说明。Linux 系统与 Mac OSX 系统可以通过设置 locale 来确定系统的字符编码,由于 Windows 使用的 locale 中不是 POSIX 标准的 locale 格式,因此在 Windows 下需要采用另一个配置参数 charset 来指定字符编码。在 Linux 系统中也可以使用 charset 来指定字符编码。 - -- charset:字符集编码。 - - 默认值:系统中动态获取,如果自动获取失败,需要用户在配置文件设置或通过 API 设置。 - - 如果配置文件中不设置 charset,在 Linux 系统中,taos 在启动时候,自动读取系统当前的 locale 信息,并从 locale 信息中解析提取 charset 编码格式。如果自动读取 locale 信息失败,则尝试读取 charset 配置,如果读取 charset 配置也失败,则中断启动过程。 - - 在 Linux 系统中,locale 信息包含了字符编码信息,因此正确设置了 Linux 系统 locale 以后可以不用再单独设置 charset。例如: - - ``` - locale zh_CN.UTF-8 - ``` - - 在 Windows 系统中,无法从 locale 获取系统当前编码。如果无法从配置文件中读取字符串编码信息,taos 默认设置为字符编码为 CP936。其等效在配置文件中添加如下配置: - - ``` - charset CP936 - ``` - - 如果需要调整字符编码,请查阅当前操作系统使用的编码,并在配置文件中正确设置。 - - 在 Linux 系统中,如果用户同时设置了 locale 和字符集编码 charset,并且 locale 和 charset 的不一致,后设置的值将覆盖前面设置的值。 - - ``` - locale zh_CN.UTF-8 - charset GBK - ``` - - 则 charset 的有效值是 GBK。 - - ``` - charset GBK - locale zh_CN.UTF-8 - ``` - - charset 的有效值是 UTF-8。 - - 日志的配置参数,与 server 的配置参数完全一样。 - -- timezone - - 默认值:动态获取当前客户端运行系统所在的时区。 - - 为应对多时区的数据写入和查询问题,TDengine 采用 Unix 时间戳(Unix Timestamp)来记录和存储时间戳。Unix 时间戳的特点决定了任一时刻不论在任何时区,产生的时间戳均一致。需要注意的是,Unix 时间戳是在客户端完成转换和记录。为了确保客户端其他形式的时间转换为正确的 Unix 时间戳,需要设置正确的时区。 - - 在 Linux 系统中,客户端会自动读取系统设置的时区信息。用户也可以采用多种方式在配置文件设置时区。例如: - - ``` - timezone UTC-8 - timezone GMT-8 - timezone Asia/Shanghai - ``` - - 均是合法的设置东八区时区的格式。但需注意,Windows 下并不支持 `timezone Asia/Shanghai` 这样的写法,而必须写成 `timezone UTC-8`。 - - 时区的设置对于查询和写入 SQL 语句中非 Unix 时间戳的内容(时间戳字符串、关键词 now 的解析)产生影响。例如: - - ```sql - SELECT count(*) FROM table_name WHERE TS<'2019-04-11 12:01:08'; - ``` - - 在东八区,SQL 语句等效于 - - ```sql - SELECT count(*) FROM table_name WHERE TS<1554955268000; - ``` - - 在 UTC 时区,SQL 语句等效于 - - ```sql - SELECT count(*) FROM table_name WHERE TS<1554984068000; - ``` - - 为了避免使用字符串时间格式带来的不确定性,也可以直接使用 Unix 时间戳。此外,还可以在 SQL 语句中使用带有时区的时间戳字符串,例如:RFC3339 格式的时间戳字符串,2013-04-12T15:52:01.123+08:00 或者 ISO-8601 格式时间戳字符串 2013-04-12T15:52:01.123+0800。上述两个字符串转化为 Unix 时间戳不受系统所在时区的影响。 - - 启动 taos 时,也可以从命令行指定一个 taosd 实例的 end point,否则就从 taos.cfg 读取。 - -- maxBinaryDisplayWidth - - Shell 中 binary 和 nchar 字段的显示宽度上限,超过此限制的部分将被隐藏。默认值:30。可在 taos shell 中通过命令 set max_binary_display_width nn 动态修改此选项。 diff --git a/docs-cn/14-reference/09-client-config/_category_.yml b/docs-cn/14-reference/09-client-config/_category_.yml deleted file mode 100644 index ad6e70b96dd031cc3d2607565f91d554e19addeb..0000000000000000000000000000000000000000 --- a/docs-cn/14-reference/09-client-config/_category_.yml +++ /dev/null @@ -1 +0,0 @@ -label: 客户端配置