---
title: 配置参数
description: "TDengine 客户端和服务配置列表"
---

## 为服务端指定配置文件

TDengine 系统后台服务由 taosd 提供，可以在配置文件 taos.cfg 里修改配置参数，以满足不同场景的需求。在 Linux 系统上，配置文件的缺省位置在 `/etc/taos` 目录，在 Windows 系统上缺省位置在 `C:\TDengine` 。可以通过 taosd 命令行执行参数 -c 指定配置文件所在目录。比如，在 Linux 系统上可以指定配置文件位于 `/home/user` 这个目录：

```
taosd -c /home/user
```

另外可以使用 `-C` 显示当前服务器配置参数：

```
taosd -C
```

## 为客户端指定配置文件

TDengine 系统的前台交互客户端应用程序为 taos，以及应用驱动，它可以与 taosd 共享同一个配置文件 taos.cfg，也可以使用单独指定配置文件。运行 taos 时，使用参数-c 指定配置文件目录，如：

```
taos -c /home/cfg
```

表示使用/home/cfg/目录下的 taos.cfg 配置文件中的参数，缺省目录是/etc/taos。 另外可以使用 `-C` 显示当前服务器配置参数：

```bash
taos -C
```

更多 taos 的使用方法请见帮助信息 `taos --help`。

## 配置参数详细列表

:::note
本节内容覆盖产品的配置参数，适用于服务端的参数按其对产品行为的影响进行分类，这其中有部分参数也同时适用于客户端；但有少量参数仅适用于客户端，这部分参数进行了单独归类。

:::

:::note
配置文件参数修改后，需要重启*taosd*服务，或客户端应用才能生效。

:::

## 连接相关

### firstEp

| 属性     | 说明                                                           |
| -------- | -------------------------------------------------------------- |
| 适用范围 | 服务端和客户端均适用                                           |
| 含义     | taosd 或者 taos 启动时，主动连接的集群中首个 dnode 的 endpoint |
| 缺省值   | localhost:6030                                                 |

### secondEp

| 属性     | 说明                                                                                  |
| -------- | ------------------------------------------------------------------------------------- |
| 适用范围 | 服务端和客户端均适用                                                                  |
| 含义     | taosd 或者 taos 启动时，如果 firstEp 连接不上，尝试连接集群中第二个 dnode 的 endpoint |
| 缺省值   | 无                                                                                    |

### fqdn

| 属性     | 说明                                                              |
| -------- | ----------------------------------------------------------------- |
| 适用范围 | 仅服务端适用                                                      |
| 含义     | 数据节点的 FQDN。如果习惯 IP 地址访问，可设置为该节点的 IP 地址。 |
| 缺省值   | 缺省为操作系统配置的第一个 hostname。                             |
| 补充说明 | 这个参数值的长度需要控制在 96 个字符以内。                        |

### serverPort

| 属性     | 说明                           |
| -------- | ------------------------------ |
| 适用范围 | 仅服务端适用                   |
| 含义     | taosd 启动后，对外服务的端口号 |
| 缺省值   | 6030                           |

:::note
确保集群中所有主机在端口 6030 上的 TCP 协议能够互通。（详细的端口情况请参见下表）
:::
| 协议 | 默认端口 | 用途说明                                         | 修改方法                                                                                           |
| :--- | :------- | :----------------------------------------------- | :------------------------------------------------------------------------------------------------- |
| TCP  | 6030     | 客户端与服务端之间通讯，多节点集群的节点间通讯。 | 由配置文件设置 serverPort 决定。                                                                   |
| TCP  | 6041     | 客户端与服务端之间的 RESTful 通讯。              | 随 serverPort 端口变化。注意 taosAdapter 配置或有不同，请参考相应[文档](/reference/taosadapter/)。 |
| TCP  | 6043     | taosKeeper 监控服务端口。                        | 随 taosKeeper 启动参数设置变化。                                                                   |
| TCP  | 6044     | 支持 StatsD 的数据接入端口。                     | 随 taosAdapter 启动参数设置变化                                                                    |
| UDP  | 6045     | 支持 collectd 数据接入端口。                     | 随 taosAdapter 启动参数设置变化                                                                    |
| TCP  | 6060     | 企业版内 Monitor 服务的网络端口。                |                                                                                                    |

### maxShellConns

| 属性     | 说明                    |
| --------| ----------------------- |
| 适用范围 | 仅服务端适用            |
| 含义    | 一个 dnode 容许的连接数 |
| 取值范围 | 10-50000000             |
| 缺省值  | 5000                    |

### numOfRpcSessions

| 属性     | 说明                    |
| --------| ---------------------- |
| 适用范围 |  客户端和服务端都适用      |
| 含义     | 一个客户端能创建的最大连接数|
| 取值范围 | 100-100000             |
| 缺省值   | 10000                 |

### timeToGetAvailableConn

| 属性     | 说明                  |
| -------- | --------------------|
| 适用范围 |  客户端和服务端都适用    |
| 含义     |获得可用连接的最长等待时间|
| 取值范围 | 10-50000000(单位为毫秒)|
| 缺省值   | 500000               |


### numOfRpcSessions

| 属性     | 说明                         |
| -------- | ---------------------------- |
| 适用范围 | 客户端和服务端都适用         |
| 含义     | 一个客户端能创建的最大连接数 |
| 取值范围 | 100-100000                   |
| 缺省值   | 10000                        |

### timeToGetAvailableConn

| 属性     | 说明                       |
| -------- | -------------------------- |
| 适用范围 | 客户端和服务端都适用       |
| 含义     | 获得可用连接的最长等待时间 |
| 取值范围 | 10-50000000(单位为毫秒)    |
| 缺省值   | 500000                     |

## 监控相关

:::note
请注意，完整的监控功能需要安装并运行 `taoskeeper` 服务。taoskeeper 负责接收监控指标数据并创建 `log` 库。

:::

### monitor

| 属性     | 说明                                                                                                                                                                                               |
| -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 适用范围 | 仅服务端适用                                                                                                                                                                                       |
| 含义     | 服务器内部的系统监控开关。监控主要负责收集物理节点的负载状况，包括 CPU、内存、硬盘、网络带宽的监控记录，监控信息将通过 HTTP 协议发送给由 `monitorFqdn` 和 `monitorProt` 指定的 taosKeeper 监控服务 |
| 取值范围 | 0：关闭监控服务， 1：激活监控服务。                                                                                                                                                                |
| 缺省值   | 0                                                                                                                                                                                                  |

### monitorFqdn

| 属性     | 说明                       |
| -------- | -------------------------- |
| 适用范围 | 仅服务端适用               |
| 含义     | taosKeeper 监控服务的 FQDN |
| 缺省值   | 无                         |

### monitorPort

| 属性     | 说明                        |
| -------- | --------------------------- |
| 适用范围 | 仅服务端适用                |
| 含义     | taosKeeper 监控服务的端口号 |
| 缺省值   | 6043                        |

### monitorInterval

| 属性     | 说明                                         |
| -------- | -------------------------------------------- |
| 适用范围 | 仅服务端适用                                 |
| 含义     | 监控数据库记录系统参数（CPU/内存）的时间间隔 |
| 单位     | 秒                                           |
| 取值范围 | 1-200000                                     |
| 缺省值   | 30                                           |

### telemetryReporting

| 属性     | 说明                     |
| -------- | ------------------------ |
| 适用范围 | 仅服务端适用             |
| 含义     | 是否上传 telemetry       |
| 取值范围 | 0,1   0: 不上传；1：上传 |
| 缺省值   | 1                        |

### crashReporting

| 属性     | 说明                     |
| -------- | ------------------------ |
| 适用范围 | 仅服务端适用             |
| 含义     | 是否上传 crash 信息      |
| 取值范围 | 0,1   0: 不上传；1：上传 |
| 缺省值   | 1                        |

## 查询相关

### queryPolicy

| 属性     | 说明                                                                                                                                                   |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| 适用范围 | 仅客户端适用                                                                                                                                           |
| 含义     | 查询语句的执行策略                                                                                                                                     |
| 单位     | 无                                                                                                                                                     |
| 缺省值   | 1                                                                                                                                                      |
| 补充说明 | 1: 只使用 vnode，不使用 qnode; 2: 没有扫描算子的子任务在 qnode 执行，带扫描算子的子任务在 vnode 执行; 3: vnode 只运行扫描算子，其余算子均在 qnode 执行 |

### querySmaOptimize

| 属性     | 说明                                                                                                             |
| -------- | ---------------------------------------------------------------------------------------------------------------- |
| 适用范围 | 仅客户端适用                                                                                                     |
| 含义     | sma index 的优化策略                                                                                             |
| 单位     | 无                                                                                                               |
| 缺省值   | 0                                                                                                                |
| 补充说明 | 0: 表示不使用 sma index，永远从原始数据进行查询; 1: 表示使用 sma index，对符合的语句，直接从预计算的结果进行查询 |

### maxNumOfDistinctRes

| 属性     | 说明                             |
| -------- | -------------------------------- |
| 适用范围 | 仅服务端适用                     |
| 含义     | 允许返回的 distinct 结果最大行数 |
| 取值范围 | 默认值为 10 万，最大值 1 亿      |
| 缺省值   | 10 万                            |

### keepColumnName

| 属性     | 说明                                                        |
| -------- | ----------------------------------------------------------- |
| 适用范围 | 仅客户端适用                                                |
| 含义     | Last、First、LastRow 函数查询时，返回的列名是否包含函数名。 |
| 取值范围 | 0 表示包含函数名，1 表示不包含函数名。                      |
| 缺省值   | 0                                                           |

### countAlwaysReturnValue

| 属性     | 说明                                                                                                                                           |
| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| 适用范围 | 仅服务端适用                                                                                                                                   |
| 含义     | count/hyperloglog函数在输入数据为空或者NULL的情况下是否返回值                                                                                  |
| 取值范围 | 0：返回空行，1：返回 0                                                                                                                         |
| 缺省值   | 1                                                                                                                                              |
| 补充说明 | 该参数设置为 1 时，如果查询中含有 GROUP BY，PARTITION BY 以及 INTERVAL 子句且相应的组或窗口内数据为空或者NULL， 对应的组或窗口将不返回查询结果 |

## 区域相关

### timezone

| 属性     | 说明                           |
| -------- | ------------------------------ |
| 适用范围 | 服务端和客户端均适用           |
| 含义     | 时区                           |
| 缺省值   | 从系统中动态获取当前的时区设置 |

:::info
为应对多时区的数据写入和查询问题，TDengine 采用 Unix 时间戳(Unix Timestamp)来记录和存储时间戳。Unix 时间戳的特点决定了任一时刻不论在任何时区，产生的时间戳均一致。需要注意的是，Unix 时间戳是在客户端完成转换和记录。为了确保客户端其他形式的时间转换为正确的 Unix 时间戳，需要设置正确的时区。

在 Linux/macOS 中，客户端会自动读取系统设置的时区信息。用户也可以采用多种方式在配置文件设置时区。例如：

```
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 时间戳不受系统所在时区的影响。

:::

### locale

| 属性     | 说明                                                                    |
| -------- | ----------------------------------------------------------------------- |
| 适用范围 | 服务端和客户端均适用                                                    |
| 含义     | 系统区位信息及编码格式                                                  |
| 缺省值   | 系统中动态获取，如果自动获取失败，需要用户在配置文件设置或通过 API 设置 |

:::info
TDengine 为存储中文、日文、韩文等非 ASCII 编码的宽字符，提供一种专门的字段类型 nchar。写入 nchar 字段的数据将统一采用 UCS4-LE 格式进行编码并发送到服务器。需要注意的是，编码正确性是客户端来保证。因此，如果用户想要正常使用 nchar 字段来存储诸如中文、日文、韩文等非 ASCII 字符，需要正确设置客户端的编码格式。

客户端的输入的字符均采用操作系统当前默认的编码格式，在 Linux/macOS 系统上多为 UTF-8，部分中文系统编码则可能是 GB18030 或 GBK 等。在 docker 环境中默认的编码是 POSIX。在中文版 Windows 系统中，编码则是 CP936。客户端需要确保正确设置自己所使用的字符集，即客户端运行的操作系统当前编码字符集，才能保证 nchar 中的数据正确转换为 UCS4-LE 编码格式。

在 Linux/macOS 中 locale 的命名规则为: <语言>\_<地区>.<字符集编码> 如：zh_CN.UTF-8，zh 代表中文，CN 代表大陆地区，UTF-8 表示字符集。字符集编码为客户端正确解析本地字符串提供编码转换的说明。Linux/macOS 可以通过设置 locale 来确定系统的字符编码，由于 Windows 使用的 locale 中不是 POSIX 标准的 locale 格式，因此在 Windows 下需要采用另一个配置参数 charset 来指定字符编码。在 Linux/macOS 中也可以使用 charset 来指定字符编码。

:::

### charset

| 属性     | 说明                                                                    |
| -------- | ----------------------------------------------------------------------- |
| 适用范围 | 服务端和客户端均适用                                                    |
| 含义     | 字符集编码                                                              |
| 缺省值   | 系统中动态获取，如果自动获取失败，需要用户在配置文件设置或通过 API 设置 |

:::info
如果配置文件中不设置 charset，在 Linux/macOS 中，taos 在启动时候，自动读取系统当前的 locale 信息，并从 locale 信息中解析提取 charset 编码格式。如果自动读取 locale 信息失败，则尝试读取 charset 配置，如果读取 charset 配置也失败，则中断启动过程。

在 Linux/macOS 中，locale 信息包含了字符编码信息，因此正确设置了 Linux/macOS 的 locale 以后可以不用再单独设置 charset。例如：

```
locale zh_CN.UTF-8
```

在 Windows 系统中，无法从 locale 获取系统当前编码。如果无法从配置文件中读取字符串编码信息，taos 默认设置为字符编码为 CP936。其等效在配置文件中添加如下配置：

```
charset CP936
```

如果需要调整字符编码，请查阅当前操作系统使用的编码，并在配置文件中正确设置。

在 Linux/macOS 中，如果用户同时设置了 locale 和字符集编码 charset，并且 locale 和 charset 的不一致，后设置的值将覆盖前面设置的值。

```
locale zh_CN.UTF-8
charset GBK
```

则 charset 的有效值是 GBK。

```
charset GBK
locale zh_CN.UTF-8
```

charset 的有效值是 UTF-8。

:::

## 存储相关

### dataDir

| 属性     | 说明                                                                                                                                                                                                          |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 适用范围 | 仅服务端适用                                                                                                                                                                                                  |
| 含义     | 数据文件目录，所有的数据文件都将写入该目录                                                                                                                                                                    |
| 缺省值   | /var/lib/taos                                                                                                                                                                                                 |
| 补充说明 | [多级存储](https://docs.taosdata.com/tdinternal/arch/#%E5%A4%9A%E7%BA%A7%E5%AD%98%E5%82%A8) 功能需要与 [KEEP](https://docs.taosdata.com/taos-sql/database/#%E5%8F%82%E6%95%B0%E8%AF%B4%E6%98%8E) 参数配合使用 |

### tempDir

| 属性     | 说明                                             |
| -------- | ------------------------------------------------ |
| 适用范围 | 仅服务端适用                                     |
| 含义     | 该参数指定所有系统运行过程中的临时文件生成的目录 |
| 缺省值   | /tmp                                             |

### minimalTmpDirGB

| 属性     | 说明                                             |
| -------- | ------------------------------------------------ |
| 适用范围 | 服务端和客户端均适用                             |
| 含义     | tempDir 所指定的临时文件目录所需要保留的最小空间 |
| 单位     | GB                                               |
| 缺省值   | 1.0                                              |

### minimalDataDirGB

| 属性     | 说明                                           |
| -------- | ---------------------------------------------- |
| 适用范围 | 仅服务端适用                                   |
| 含义     | dataDir 指定的时序数据存储目录所需要保留的最小 |
| 单位     | GB                                             |
| 缺省值   | 2.0                                            |

### metaCacheMaxSize

| 属性     | 说明                                           |
| -------- | ---------------------------------------------- |
| 适用范围 | 仅客户端适用                                   |
| 含义     | 指定单个客户端元数据缓存大小的最大值           |
| 单位     | MB                                             |
| 缺省值   | -1 (无限制)                                    |

## 集群相关

### supportVnodes

| 属性     | 说明                        |
| -------- | --------------------------- |
| 适用范围 | 仅服务端适用                |
| 含义     | dnode 支持的最大 vnode 数目 |
| 取值范围 | 0-4096                      |
| 缺省值   | CPU 核数的 2 倍             |

## 性能调优

### numOfCommitThreads

| 属性     | 说明                   |
| -------- | ---------------------- |
| 适用范围 | 仅服务端适用           |
| 含义     | 设置写入线程的最大数量 |
| 取值范围 | 0-1024                 |
| 缺省值   |                        |

## 日志相关

### logDir

| 属性     | 说明                                               |
| -------- | -------------------------------------------------- |
| 适用范围 | 服务端和客户端均适用                               |
| 含义     | 日志文件目录，客户端和服务器的运行日志将写入该目录 |
| 缺省值   | /var/log/taos                                      |

### minimalLogDirGB

| 属性     | 说明                                                   |
| -------- | ------------------------------------------------------ |
| 适用范围 | 服务端和客户端均适用                                   |
| 含义     | 当日志文件夹所在磁盘可用空间大小小于该值时，停止写日志 |
| 单位     | GB                                                     |
| 缺省值   | 1.0                                                    |

### numOfLogLines

| 属性     | 说明                         |
| -------- | ---------------------------- |
| 适用范围 | 服务端和客户端均适用         |
| 含义     | 单个日志文件允许的最大行数。 |
| 缺省值   | 10,000,000                   |

### asyncLog

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 服务端和客户端均适用 |
| 含义     | 日志写入模式         |
| 取值范围 | 0：同步、1：异步     |
| 缺省值   | 1                    |

### logKeepDays

| 属性     | 说明                                                                                |
| -------- | ----------------------------------------------------------------------------------- |
| 适用范围 | 服务端和客户端均适用                                                                |
| 含义     | 日志文件的最长保存时间                                                              |
| 单位     | 天                                                                                  |
| 缺省值   | 0                                                                                   |
| 补充说明 | 大于 0 时，日志文件会被重命名为 taosdlog.xxx，其中 xxx 为日志文件最后修改的时间戳。 |

### slowLogThreshold

| 属性     | 说明                                                          |
| -------- | ------------------------------------------------------------- |
| 适用范围 | 仅客户端适用                                                  |
| 含义     | 指定慢查询门限值，大于等于门限值认为是慢查询                  |
| 单位     | 秒                                                            |
| 缺省值   | 3                                                             |
| 补充说明 | 每个客户端中所有慢查询会被记录在日志目录下的taosSlowLog文件中 |

### slowLogScope

| 属性     | 说明                                                          |
| -------- | --------------------------------------------------------------|
| 适用范围 | 仅客户端适用                                                  |
| 含义     | 指定启动记录哪些类型的慢查询                                  |
| 可选值   | ALL, QUERY, INSERT, OTHERS, NONE                              |
| 缺省值   | ALL                                                           |
| 补充说明 | 默认记录所有类型的慢查询，可通过配置只记录某一类型的慢查询    |

### debugFlag

| 属性     | 说明                                                                                              |
| -------- | ------------------------------------------------------------------------------------------------- |
| 适用范围 | 服务端和客户端均适用                                                                              |
| 含义     | 运行日志开关                                                                                      |
| 取值范围 | 131（输出错误和警告日志），135（输出错误、警告和调试日志），143（输出错误、警告、调试和跟踪日志） |
| 缺省值   | 131 或 135（不同模块有不同的默认值）                                                              |

### tmrDebugFlag

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 服务端和客户端均适用 |
| 含义     | 定时器模块的日志开关 |
| 取值范围 | 同上                 |
| 缺省值   |                      |

### uDebugFlag

| 属性     | 说明                   |
| -------- | ---------------------- |
| 适用范围 | 服务端和客户端均适用   |
| 含义     | 共用功能模块的日志开关 |
| 取值范围 | 同上                   |
| 缺省值   |                        |

### rpcDebugFlag

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 服务端和客户端均适用 |
| 含义     | rpc 模块的日志开关   |
| 取值范围 | 同上                 |
| 缺省值   |                      |

### jniDebugFlag

| 属性     | 说明               |
| -------- | ------------------ |
| 适用范围 | 仅客户端适用       |
| 含义     | jni 模块的日志开关 |
| 取值范围 | 同上               |
| 缺省值   |                    |

### qDebugFlag

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 服务端和客户端均适用 |
| 含义     | query 模块的日志开关 |
| 取值范围 | 同上                 |
| 缺省值   |                      |

### cDebugFlag

| 属性     | 说明                  |
| -------- | --------------------- |
| 适用范围 | 仅客户端适用          |
| 含义     | client 模块的日志开关 |
| 取值范围 | 同上                  |
| 缺省值   |                       |

### dDebugFlag

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 仅服务端适用         |
| 含义     | dnode 模块的日志开关 |
| 取值范围 | 同上                 |
| 缺省值   | 135                  |

### vDebugFlag

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 仅服务端适用         |
| 含义     | vnode 模块的日志开关 |
| 取值范围 | 同上                 |
| 缺省值   |                      |

### mDebugFlag

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 仅服务端适用         |
| 含义     | mnode 模块的日志开关 |
| 取值范围 | 同上                 |
| 缺省值   | 135                  |

### wDebugFlag

| 属性     | 说明               |
| -------- | ------------------ |
| 适用范围 | 仅服务端适用       |
| 含义     | wal 模块的日志开关 |
| 取值范围 | 同上               |
| 缺省值   | 135                |

### sDebugFlag

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 服务端和客户端均适用 |
| 含义     | sync 模块的日志开关  |
| 取值范围 | 同上                 |
| 缺省值   | 135                  |

### tsdbDebugFlag

| 属性     | 说明                |
| -------- | ------------------- |
| 适用范围 | 仅服务端适用        |
| 含义     | tsdb 模块的日志开关 |
| 取值范围 | 同上                |
| 缺省值   |                     |

### tqDebugFlag

| 属性     | 说明              |
| -------- | ----------------- |
| 适用范围 | 仅服务端适用      |
| 含义     | tq 模块的日志开关 |
| 取值范围 | 同上              |
| 缺省值   |                   |

### fsDebugFlag

| 属性     | 说明              |
| -------- | ----------------- |
| 适用范围 | 仅服务端适用      |
| 含义     | fs 模块的日志开关 |
| 取值范围 | 同上              |
| 缺省值   |                   |

### udfDebugFlag

| 属性     | 说明               |
| -------- | ------------------ |
| 适用范围 | 仅服务端适用       |
| 含义     | UDF 模块的日志开关 |
| 取值范围 | 同上               |
| 缺省值   |                    |

### smaDebugFlag

| 属性     | 说明               |
| -------- | ------------------ |
| 适用范围 | 仅服务端适用       |
| 含义     | sma 模块的日志开关 |
| 取值范围 | 同上               |
| 缺省值   |                    |

### idxDebugFlag

| 属性     | 说明                 |
| -------- | -------------------- |
| 适用范围 | 仅服务端适用         |
| 含义     | index 模块的日志开关 |
| 取值范围 | 同上                 |
| 缺省值   |                      |

### tdbDebugFlag

| 属性     | 说明               |
| -------- | ------------------ |
| 适用范围 | 仅服务端适用       |
| 含义     | tdb 模块的日志开关 |
| 取值范围 | 同上               |
| 缺省值   |                    |

## Schemaless 相关

### smlChildTableName

| 属性     | 说明                            |
| -------- | ------------------------------- |
| 适用范围 | 仅客户端适用                    |
| 含义     | schemaless 自定义的子表名的 key |
| 类型     | 字符串                          |
| 缺省值   | 无                              |

### smlTagName

| 属性     | 说明                                 |
| -------- | ------------------------------------ |
| 适用范围 | 仅客户端适用                         |
| 含义     | schemaless tag 为空时默认的 tag 名字 |
| 类型     | 字符串                               |
| 缺省值   | \_tag_null                           |

### smlDataFormat

| 属性     | 说明                                                     |
| -------- | -------------------------------------------------------- |
| 适用范围 | 仅客户端适用                                             |
| 含义     | schemaless 列数据是否顺序一致，从3.0.3.0开始，该配置废弃 |
| 值域     | 0：不一致；1: 一致                                       |
| 缺省值   | 0                                                        |

## 其他

### enableCoreFile

| 属性     | 说明                                                                                                                                       |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| 适用范围 | 服务端和客户端均适用                                                                                                                       |
| 含义     | 是否开启服务 crash 时生成 core 文件                                                                                                        |
| 取值范围 | 0：否，1：是                                                                                                                               |
| 缺省值   | 1                                                                                                                                          |
| 补充说明 | 不同的启动方式，生成 core 文件的目录如下：1、systemctl start taosd 启动：生成的 core 在根目录下 <br/> 2、手动启动，就在 taosd 执行目录下。 |

### enableScience

| 属性     | 说明                         |
| -------- | ---------------------------- |
| 适用范围 | 仅客户端 TAOS-CLI 适用       |
| 含义     | 是否开启科学计数法显示浮点数 |
| 取值范围 | 0：否，1：是                 |
| 缺省值   | 0                            |

### udf

| 属性     | 说明               |
| -------- | ------------------ |
| 适用范围 | 仅服务端适用       |
| 含义     | 是否启动 udf 服务  |
| 取值范围 | 0: 不启动；1：启动 |
| 缺省值   | 1                  |

### ttlChangeOnWrite

| 属性     | 说明               |
| -------- | ------------------ |
| 适用范围 | 仅服务端适用       |
| 含义     | ttl 到期时间是否伴随表的修改操作改变  |
| 取值范围 | 0: 不改变；1：改变 |
| 缺省值   | 0                  |

### keepTimeOffset

| 属性     | 说明               |
| -------- | ------------------ |
| 适用范围 | 仅服务端适用         |
| 含义     | 迁移操作的延时      |
| 单位     | 小时               |
| 取值范围 | 0-23               |
| 缺省值   | 0                  |

## 压缩参数

### compressMsgSize

| 属性     | 说明                                                                            |
| -------- | ------------------------------------------------------------------------------- |
| 适用于   | 服务端和客户端均适用                                                            |
| 含义     | 是否对 RPC 消息进行压缩                                                         |
| 取值范围 | -1: 所有消息都不压缩; 0: 所有消息都压缩; N (N>0): 只有大于 N 个字节的消息才压缩 |
| 缺省值   | -1                                                                              |

## 3.0 中有效的配置参数列表

| #   |        **参数**        | **适用于 2.X ** | **适用于 3.0 **                 | 3.0 版本的当前行为 |
| --- | :--------------------: | --------------- | ------------------------------- | ------------------ |
| 1   |        firstEp         | 是              | 是                              |                    |
| 2   |        secondEp        | 是              | 是                              |                    |
| 3   |          fqdn          | 是              | 是                              |                    |
| 4   |       serverPort       | 是              | 是                              |                    |
| 5   |     maxShellConns      | 是              | 是                              |                    |
| 6   |        monitor         | 是              | 是                              |                    |
| 7   |      monitorFqdn       | 否              | 是                              |                    |
| 8   |      monitorPort       | 否              | 是                              |                    |
| 9   |    monitorInterval     | 是              | 是                              |                    |
| 10  |      queryPolicy       | 否              | 是                              |                    |
| 11  |    querySmaOptimize    | 否              | 是                              |                    |
| 12  |  maxNumOfDistinctRes   | 是              | 是                              |                    |
| 15  | countAlwaysReturnValue | 是              | 是                              |                    |
| 16  |        dataDir         | 是              | 是                              |                    |
| 17  |    minimalDataDirGB    | 是              | 是                              |                    |
| 18  |     supportVnodes      | 否              | 是                              |                    |
| 19  |        tempDir         | 是              | 是                              |                    |
| 20  |    minimalTmpDirGB     | 是              | 是                              |                    |
| 21  |   smlChildTableName    | 是              | 是                              |                    |
| 22  |       smlTagName       | 是              | 是                              |                    |
| 23  |     smlDataFormat      | 否              | 是（从3.0.3.0开始，该配置废弃） |                    |
| 24  |     statusInterval     | 是              | 是                              |                    |
| 25  |         logDir         | 是              | 是                              |                    |
| 26  |    minimalLogDirGB     | 是              | 是                              |                    |
| 27  |     numOfLogLines      | 是              | 是                              |                    |
| 28  |        asyncLog        | 是              | 是                              |                    |
| 29  |      logKeepDays       | 是              | 是                              |                    |
| 30  |       debugFlag        | 是              | 是                              |                    |
| 31  |      tmrDebugFlag      | 是              | 是                              |                    |
| 32  |       uDebugFlag       | 是              | 是                              |                    |
| 33  |      rpcDebugFlag      | 是              | 是                              |                    |
| 34  |      jniDebugFlag      | 是              | 是                              |                    |
| 35  |       qDebugFlag       | 是              | 是                              |                    |
| 36  |       cDebugFlag       | 是              | 是                              |                    |
| 37  |       dDebugFlag       | 是              | 是                              |                    |
| 38  |       vDebugFlag       | 是              | 是                              |                    |
| 39  |       mDebugFlag       | 是              | 是                              |                    |
| 40  |       wDebugFlag       | 是              | 是                              |                    |
| 41  |       sDebugFlag       | 是              | 是                              |                    |
| 42  |     tsdbDebugFlag      | 是              | 是                              |                    |
| 43  |      tqDebugFlag       | 否              | 是                              |                    |
| 44  |      fsDebugFlag       | 是              | 是                              |                    |
| 45  |      udfDebugFlag      | 否              | 是                              |                    |
| 46  |      smaDebugFlag      | 否              | 是                              |                    |
| 47  |      idxDebugFlag      | 否              | 是                              |                    |
| 48  |      tdbDebugFlag      | 否              | 是                              |                    |
| 49  |     metaDebugFlag      | 否              | 是                              |                    |
| 50  |        timezone        | 是              | 是                              |                    |
| 51  |         locale         | 是              | 是                              |                    |
| 52  |        charset         | 是              | 是                              |                    |
| 53  |          udf           | 是              | 是                              |                    |
| 54  |     enableCoreFile     | 是              | 是                              |                    |
| 55  |    ttlChangeOnWrite    | 否              | 是                              |                    |
| 56  |     keepTimeOffset     | 是              | 是                              |                    |

## 2.x->3.0 的废弃参数

| #   |        **参数**         | **适用于 2.X ** | **适用于 3.0 ** | 3.0 版本的当前行为                                   |
| --- | :---------------------: | --------------- | --------------- | ---------------------------------------------------- |
| 1   |       arbitrator        | 是              | 否              | 通过 RAFT 协议选主                                   |
| 2   |   numOfThreadsPerCore   | 是              | 否              | 有其它参数设置多种线程池的大小                       |
| 3   |       numOfMnodes       | 是              | 否              | 通过 create mnode 命令动态创建 mnode                 |
| 4   |        vnodeBak         | 是              | 否              | 3.0 行为未知                                         |
| 5   |         balance         | 是              | 否              | 负载均衡功能由 split/merge vgroups 实现 （暂不支持） |
| 6   |     balanceInterval     | 是              | 否              | 随着 balance 参数失效                                |
| 7   |    offlineThreshold     | 是              | 否              | 3.0 行为未知                                         |
| 8   |          role           | 是              | 否              | 由 supportVnode 决定是否能够创建                     |
| 9   |      dnodeNopLoop       | 是              | 否              | 2.6 文档中未找到此参数                               |
| 10  |        rpcTimer         | 是              | 否              | 3.0 行为未知                                         |
| 11  |       rpcMaxTime        | 是              | 否              | 3.0 行为未知                                         |
| 12  |       rpcForceTcp       | 是              | 否              | 默认为 TCP                                           |
| 13  |     tcpConnTimeout      | 是              | 否              | 3.0 行为未知                                         |
| 14  |    syncCheckInterval    | 是              | 否              | 3.0 行为未知                                         |
| 15  |       maxTmrCtrl        | 是              | 否              | 3.0 行为未知                                         |
| 16  |     monitorReplica      | 是              | 否              | 由 RAFT 协议管理多副本                               |
| 17  |     smlTagNullName      | 是              | 否              | 3.0 行为未知                                         |
| 18  |    ratioOfQueryCores    | 是              | 否              | 由 线程池 相关配置参数决定                           |
| 19  |   maxStreamCompDelay    | 是              | 否              | 3.0 行为未知                                         |
| 20  | maxFirstStreamCompDelay | 是              | 否              | 3.0 行为未知                                         |
| 21  |  retryStreamCompDelay   | 是              | 否              | 3.0 行为未知                                         |
| 22  |  streamCompDelayRatio   | 是              | 否              | 3.0 行为未知                                         |
| 23  |     maxVgroupsPerDb     | 是              | 否              | 由 create db 的参数 vgroups 指定实际 vgroups 数量    |
| 24  |    maxTablesPerVnode    | 是              | 否              | DB 中的所有表近似平均分配到各个 vgroup               |
| 25  |    minTablesPerVnode    | 是              | 否              | DB 中的所有表近似平均分配到各个 vgroup               |
| 26  |  tableIncStepPerVnode   | 是              | 否              | DB 中的所有表近似平均分配到各个 vgroup               |
| 27  |          cache          | 是              | 否              | 由 buffer 代替 cache\*blocks                         |
| 28  |         blocks          | 是              | 否              | 由 buffer 代替 cache\*blocks                         |
| 29  |          days           | 是              | 否              | 由 create db 的参数 duration 取代                    |
| 30  |          keep           | 是              | 否              | 由 create db 的参数 keep 取代                        |
| 31  |         minRows         | 是              | 否              | 由 create db 的参数 minRows 取代                     |
| 32  |         maxRows         | 是              | 否              | 由 create db 的参数 maxRows 取代                     |
| 33  |         quorum          | 是              | 否              | 由 RAFT 协议决定                                     |
| 34  |          comp           | 是              | 否              | 由 create db 的参数 comp 取代                        |
| 35  |        walLevel         | 是              | 否              | 由 create db 的参数 wal_level 取代                   |
| 36  |          fsync          | 是              | 否              | 由 create db 的参数 wal_fsync_period 取代            |
| 37  |         replica         | 是              | 否              | 由 create db 的参数 replica 取代                     |
| 38  |       partitions        | 是              | 否              | 3.0 行为未知                                         |
| 39  |         update          | 是              | 否              | 允许更新部分列                                       |
| 40  |        cachelast        | 是              | 否              | 由 create db 的参数 cacheModel 取代                  |
| 41  |      maxSQLLength       | 是              | 否              | SQL 上限为 1MB，无需参数控制                         |
| 42  |   maxWildCardsLength    | 是              | 否              | 3.0 行为未知                                         |
| 43  |    maxRegexStringLen    | 是              | 否              | 3.0 行为未知                                         |
| 44  |   maxNumOfOrderedRes    | 是              | 否              | 3.0 行为未知                                         |
| 45  |     maxConnections      | 是              | 否              | 取决于系统配置和系统处理能力，详见后面的 Note        |
| 46  |   mnodeEqualVnodeNum    | 是              | 否              | 3.0 行为未知                                         |
| 47  |          http           | 是              | 否              | http 服务由 taosAdapter 提供                         |
| 48  |   httpEnableRecordSql   | 是              | 否              | taosd 不提供 http 服务                               |
| 49  |     httpMaxThreads      | 是              | 否              | taosd 不提供 http 服务                               |
| 50  |     restfulRowLimit     | 是              | 否              | taosd 不提供 http 服务                               |
| 51  |   httpDbNameMandatory   | 是              | 否              | taosd 不提供 http 服务                               |
| 52  |      httpKeepAlive      | 是              | 否              | taosd 不提供 http 服务                               |
| 53  |     enableRecordSql     | 是              | 否              | 3.0 行为未知                                         |
| 54  |  maxBinaryDisplayWidth  | 是              | 否              | 3.0 行为未知                                         |
| 55  |         stream          | 是              | 否              | 默认启用连续查询                                     |
| 56  |  retrieveBlockingModel  | 是              | 否              | 3.0 行为未知                                         |
| 57  |  tsdbMetaCompactRatio   | 是              | 否              | 3.0 行为未知                                         |
| 58  |   defaultJSONStrType    | 是              | 否              | 3.0 行为未知                                         |
| 59  |      walFlushSize       | 是              | 否              | 3.0 行为未知                                         |
| 60  |        flowctrl         | 是              | 否              | 3.0 行为未知                                         |
| 61  |       slaveQuery        | 是              | 否              | 3.0 行为未知： slave vnode 是否能够处理查询？        |
| 62  |      adjustMaster       | 是              | 否              | 3.0 行为未知                                         |
| 63  |     topicBinaryLen      | 是              | 否              | 3.0 行为未知                                         |
| 64  |   telegrafUseFieldNum   | 是              | 否              | 3.0 行为未知                                         |
| 65  |    deadLockKillQuery    | 是              | 否              | 3.0 行为未知                                         |
| 66  |       clientMerge       | 是              | 否              | 3.0 行为未知                                         |
| 67  |      sdbDebugFlag       | 是              | 否              | 参考 3.0 的 DebugFlag 系列参数                       |
| 68  |      odbcDebugFlag      | 是              | 否              | 参考 3.0 的 DebugFlag 系列参数                       |
| 69  |      httpDebugFlag      | 是              | 否              | 参考 3.0 的 DebugFlag 系列参数                       |
| 70  |      monDebugFlag       | 是              | 否              | 参考 3.0 的 DebugFlag 系列参数                       |
| 71  |       cqDebugFlag       | 是              | 否              | 参考 3.0 的 DebugFlag 系列参数                       |
| 72  |      shortcutFlag       | 是              | 否              | 参考 3.0 的 DebugFlag 系列参数                       |
| 73  |      probeSeconds       | 是              | 否              | 3.0 行为未知                                         |
| 74  |    probeKillSeconds     | 是              | 否              | 3.0 行为未知                                         |
| 75  |      probeInterval      | 是              | 否              | 3.0 行为未知                                         |
| 76  |      lossyColumns       | 是              | 否              | 3.0 行为未知                                         |
| 77  |       fPrecision        | 是              | 否              | 3.0 行为未知                                         |
| 78  |       dPrecision        | 是              | 否              | 3.0 行为未知                                         |
| 79  |        maxRange         | 是              | 否              | 3.0 行为未知                                         |
| 80  |          range          | 是              | 否              | 3.0 行为未知                                         |
