参数名 | 缩写 | 类型 | 生效类型 | 生效策略 | 说明 |
---|---|---|---|---|---|
--dbpath | -d | str | 1. 指定数据文件存放路径。2. 如果不指定,则默认为当前路径。 | ||
--indexpath | -i | str | 1. 指定索引文件存放路径。2. 如果不指定,则默认与'dbpath'相同。 | ||
--confpath | -c | str | 1. 指定配置文件路径(不包含文件名),系统会在confpath下寻找sdb.conf。 2. sdb.conf中填入需要的配置项,配制方法为:参数名 = 参数值。如 svcname=11810;diaglevel=3 3. 如果不指定此参数,系统默认在当前路径寻找sdb.conf。 4. sdb.conf可以不存在。 |
||
--logpath | -l | str | 1. 副本节点在进行数据同步时会生成同步日志。此参数用来指定同步日志的路径。 2. 如果不指定,则默认路径为:数据文件路径/replicalog |
||
--diagpath | str | 重启生效 | 1. 指定诊断日志存放目录。 2. 如果不指定,则默认为:数据文件路径/diaglog |
||
--auditpath | str | 重启生效 | 1. 指定审计日志存放目录。 2. 如果不指定,则默认为:数据文件路径/diaglog |
||
--diagnum | num | 在线生效 | 当前文件写满时生效 | 1. 指定诊断日志文件最大数量。 2. 如果不指定,则默认为:20,-1表示不限制,取值范围[-1, 231 - 1]。 |
|
--auditnum | num | 在线生效 | 当前文件写满时生效 | 1. 指定审计日志文件最大数量。 2. 如果不指定,则默认为:20,-1表示不限制,取值范围[-1, 231 - 1]。 |
|
--bkuppath | str | 重启生效 | 1. 指定备份文件生成目录。 2. 如果不指定,则默认为:数据文件路径/bakfile |
||
--maxpool | num | 在线生效 | 1. 指定线程池内线程数量。 2. 如果不指定,则默认为50,取值范围是[0,10000]。 |
||
--svcname | -p | str | 1. 指定本地服务端口,用于对客户端提供服务。 2. 协调节点默认端口为 11810,编目节点默认端口为 11800,数据节点默认端口为 11820。 |
||
--replname | -r | str | 1. 指定数据复制服务端口,默认端口为 svcname+1。 2. 该参数只对编目节点和数据节点有效。 |
||
--shardname | -a | str | 指定数据分区服务端口,默认端口为 svcname+2 | ||
--catalogname | -x | str | 1. 指定编目服务端口,默认端口为 svcname+3。 2. 该参数只对编目节点有效。 |
||
--httpname | -s | str | 指定 REST 服务端口,默认端口为 svcname+4 | ||
--diaglevel | -v | num | 在线生效 | 1. 指定诊断日志打印级别。SequoiaDB中诊断日志从0-5分别代表:SEVERE, ERROR, EVENT, WARNING, INFO, DEBUG。 2. 如果不指定,则默认为WARNING。 |
|
--auditmask | str | 在线生效 | 新连接生效 | 1. 指定审计日志打印掩码。SequoiaDB中审计日志类型有:ACCESS,CLUSTER,SYSTEM,DML,DDL,DCL,DQL,INSERT,DELETE,UPDATE,OTHER。 2. 如果不指定,则默认为"SYSTEM|DDL|DCL", ALL取值表示开启所有,NONE关闭全部。 3. 更详细的内容可参考审计日志 |
|
--role | -o | str | 1. 指定服务角色。SequoiaDB分别以data/coord/catalog/standalone代表:数据节点/协调节点/编目节点/单机。 2. 如果不指定则默认为单机。 |
||
--catalogaddr | -t | str | 1. 指定编目节点的地址。配置形式为"hostname1:catalogname1,hostname2:catalogname2,..."。 2. 需要至少指定一个编目节点的地址。 |
||
--logfilesz | -f | num | 1. 指定同步日志文件的大小。合法输入为64(MB)- 2048(MB)。 2. 如果不指定,则默认为64(MB)。 3. 同步日志的总大小(logfilesz * logfilenum)决定了在同步过程中的容错能力,日志越大则触发全量同步的可能性越小。 |
||
--logfilenum | -n | num | 1. 指定同步日志文件的数量。 2. 如果不指定,则默认为20。 |
||
--transactionon | -e | boolean | 重启生效 | 1. 是否开启事务功能。默认为true 2. 当开启事务功能,'logfilenum' 必须大于1。 |
|
--transactiontimeout | num | 在线生效 | 1. 事务锁等待超时时间(单位:秒),默认为:60,取值范围[0,3600] | ||
--numpreload | num | 重启生效 | 页面预加载代理数据,默认值为0,取值范围:[0,100] | ||
--maxprefpool | num | 重启生效 | 数据预取代理池最大数量,默认值:0,取值范围:[0,1000] | ||
--maxreplsync | num | 在线生效 | 日志同步最大并发数量,默认值:10,取值范围:[0,200], 0表示不启用日志并发同步 | ||
--logbuffsize | num | 重启生效 | 复制日志内存页面数,默认值:1024,取值范围:[512,1024000],但日志总内存大小不能超过日志总文件大小;每个页面大小为64KB | ||
--tmppath | str | 重启生效 | 数据库临时文件目录,默认为'数据库路径'+'/tmp' | ||
--sortbuf | num | 在线生效 | 下次查询生效 | 排序缓存大小(MB),默认值256,最小值128,取值范围[128, 231 - 1] | |
--hjbuf | num | 在线生效 | 下次查询生效 | 哈希连接缓存大小(MB),默认值128,最小值64,取值范围[64, 231 - 1] | |
--syncstrategy | str | 在线生效 | 1. 副本组之间数据同步控制策略。 2. 取值列表: ● none: 不开启同步控制策略。若主节点处理数据的能力远超备节点同步数据的能力,则在写操作繁忙的场景下易导致备节点发生全量同步。 ● keepnormal: 主动降低主节点相对于正常节点的处理速度(可能会造成性能影响),以避免全量同步的发生。 ● keepall: 主动降低主节点相对于所有节点的处理速度(可能会造成性能影响),以避免全量同步的发生。 3. keepnormal和keepall的区别在于,当有节点异常时keepall会降低主节点的处理速度,而keepnormal不受异常节点的影响。 4. 如果不指定,默认为keepnormal。 |
||
--preferredinstance | str | 在线生效 | 新连接生效 | 指定执行读请求时优先选择的实例,更多内容可参考 setSessionAttr()。 该参数在 v3.4.5 及以上版本中已更名,低版本的用户仍需使用原参数 preferedinstance。 |
|
--preferredinstancemode | str | 在线生效 | 新连接生效 | 指定当多个实例符合 preferredinstance 的条件时的选择模式,更多内容可参考 setSessionAttr()。 该参数在 v3.4.5 及以上版本中已更名,低版本的用户仍需使用原参数 preferedinstancemode。 |
|
--preferredstrict | boolean | 在线生效 | 新连接生效 | 指定节点选择是否为严格模式,当为严格模式时,节点只能从 preferredinstance 指定的ID中选取,默认为false。 该参数在 v3.4.5 及以上版本中已更名,低版本的用户仍需使用原参数 preferedstrict。 |
|
--preferredperiod | num | 在线生效 | 新连接生效 | 优先实例的有效周期,单位为秒,更多内容可参考 setSessionAttr()。 该参数在 v3.4.5 及以上版本中已更名,低版本的用户仍需使用原参数 preferedperiod。 |
|
--instanceid | num | 重启生效 | 1. 节点的实例 ID,用于 preferredinstance 进行实例选择。 2. 有效的取值包括 [1, 255]。 3. 如不指定,或者指定超出有效范围,则按照节点在编目信息中的下标进行自动分配。 4. 多个节点可以指定相同的实例 ID。 5. 重启后需要使用 invalidateCache() 清除节点的缓存信息 |
||
--lobpath | str | 1. 指定大对象存放路径。 2. 如果不指定,则默认为:数据文件路径 |
|||
--lobmetapath | str | 1. 指定大对象元数据存放路径。 2. 如果不指定,则默认与'lobpath'保持一致 |
|||
--directioinlob | boolean | 在线生效 | 新建集合空间生效 | 在大对象功能中关闭文件系统缓存,如果不指定,默认值为"false" | |
--sparsefile | boolean | 在线生效 | 当扩展文件时,使用稀疏文件功能,如果不指定,默认值为"true" | ||
--weight | num | 在线生效 | 节点选举权重, 默认值为10, 取值范围[1, 100] | ||
--usessl | boolean | 在线生效 | 新连接生效 | 允许客户端使用SSL连接(仅限企业版),默认为false | |
--auth | boolean | 在线生效 | 开启鉴权功能.默认为true | ||
--planbuckets | num | 在线生效 | 下次查询生效 | 1. 访问计划缓存内桶的个数。 2. 当其为0时数据库将不会缓存任何访问计划。 3. 默认为500,最大值为4096。 4. 更详细的内容可参考 访问计划缓存。 |
|
--optimeout | num | 在线生效 | 判定操作中断的时间(ms),默认值:60000, 0表示不超时,取值范围[0, 231 - 1] | ||
--overflowratio | num | 在线生效 | 记录大小预留空间扩展比(%),默认为12,取值范围:[0,10000] | ||
--omaddr | str | 1. 指定om节点的地址。配置形式为"hostname:omservicename"。 | |||
--maxcachesize | num | 在线生效 | 节点缓存最大值,单位为MB,默认值为0,取值范围[0, 231 - 1](注意:该配置目前仅对Lob功能生效) | ||
--maxcachejob | num | 在线生效 | 1. 后台缓存任务线程的最大数量,默认值为10,取值范围为[2, 200]。 2. 后台缓存任务线程主要执行同步脏页至文件,回收和释放空闲内存页。 3. 后台缓存任务线程根据缓存的负载情况自动启动和退出。 4. 该配置目前仅对Lob功能生效。 |
||
--cachemergesz | num | 在线生效 | 每一个集合空间用于合并页的缓存大小,默认为0,取值范围:[0,64],单位为MB(注意:该配置目前仅对Lob功能生效) | ||
--pagealloctimeout | num | 在线生效 | 申请缓存页的超时时间,默认为0,取值范围:[0,3600000],单位为毫秒 | ||
--maxsyncjob | num | 在线生效 | 1. 后台数据同步任务线程的最大数量,默认值为10,取值范围为[2, 200]。 2. 后台数据同步任务线程主要执行同步脏数据和日志至文件。 3. 后台数据同步任务线程根据负载情况自动启动和退出。 |
||
--syncinterval | num | 在线生效 | 1. 后台数据同步周期,单位毫秒。 2. 对于编目节点和om节点,默认值为10000,取值范围(0, 60000] 3. 对于其它类型的节点,默认值为10000,0表示不按周期触发数据同步,取值范围[0, 231 - 1] |
||
--syncrecordnum | num | 在线生效 | 1. 后台数据同步触发记录数。 2. 对于编目节点和om节点,默认值为10,取值范围(0, 1000] 3. 对于其它类型的节点,默认值为0,0表示不按记录数触发数据同步,取值范围[0, 231 - 1] |
||
--syncdeep | boolean | 在线生效 | 1. 数据同步是否开启深度刷盘。 2. 如果不指定,则默认为false。 |
||
--archiveon | boolean | 重启生效 | 开启复制日志归档功能,默认值为false。 | ||
--archivecompresson | boolean | 在线生效 | 新归档文件生效 | 开启复制日志归档压缩功能,默认值为true。 | |
--archivepath | str | 1. 此参数用来指定归档日志的路径。 2. 如果不指定,则默认路径为:数据文件路径/archivelog。 |
|||
--archivetimeout | num | 在线生效 | 判定未归档的超时时间(秒),默认值:600,0表示不超时, 取值范围[0, 231 - 1]。 | ||
--archiveexpired | num | 在线生效 | 归档日志文件的过期时间(小时),默认值:240,0表示不过期, 取值范围[0, 11930464]。 | ||
--archivequota | num | 在线生效 | 归档日志目录的磁盘配额(GB),默认值:10,0表示没有限制,取值范围[0, 231 - 1]。 | ||
--dataerrorop | num | 在线生效 | 1. 节点在无法继续正常增量同步而可能触发全量同步时的处理操作,取值为 0/1/2。 缺省为1。 2. 取值列表: ● 0: 不作任何处理,保持节点运行。 ● 1: 自动从该数据组的其它节点进行全量同步。 ● 2: 该节点停止运行。 |
||
--maxconn | num | 在线生效 | 指定允许连接到引擎的客户端的最大数量,取值范围为[0,30000], 默认值是0,0表示不限制 | ||
--plancachelevel | num | 在线生效 | 下次查询生效 | 1. 指定查询计划的缓存级别,默认是 3。 2. 取值列表: ● 0: 不缓存查询计划。 ● 1: 缓存原查询计划。 ● 2: 缓存泛化后的查询计划。 ● 3: 缓存参数化的查询计划。 ● 4: 缓存参数化并带操作符模糊匹配的查询计划。 |
|
--svcscheduler | num | 重启生效 | 1. 指定任务调度器类型,默认是0。 2. 取值列表: ● 0: 不开启。 ● 1: 先入先出。 ● 2: 基于优先级调度。 ● 3: 基于容器调度。 |
||
--svcmaxconcurrency | num | 在线生效 | 1. 指定任务执行的最大并发数,0表示不限制。默认值为100,取值范围[0, 231 - 1]。 2. 当'svcscheduler'取值为0时,该参数不生效。 |
||
--transisolation | num | 在线生效 | 下一次事务中生效 | 1. 指定事务隔离级别,默认是0。 2. 取值列表: ● 0: RU,读未提交。 ● 1: RC, 读已提交。 ● 2: RS,读稳定性。 |
|
--translockwait | boolean | 在线生效 | 下一次事务中生效 | 1. 指定事务在RC隔离级别下记录锁的等待行为,默认是false。需要与transisolation配合使用 2. 取值列表: ● false: 不等待记录锁,直接从系统读取最后一次提交的版本。 ● true: 等待记录锁,读取最新提交版本的数据 |
|
--transautocommit | boolean | 在线生效 | 下一次事务中生效 | 是否开启自动事务提交,默认是false。只有当 transaction 开启时取值才会生效。 | |
--transautorollback | boolean | 在线生效 | 下一次事务中生效 | 1.事务操作失败是否自动回滚该事务。默认为true。只有当 transaction 开启时取值才会生效。 | |
--transuserbs | boolean | 在线生效 | 下一次事务中生效 | 事务操作是否使用回滚段。默认为true。只有当 transaction 开启时取值才会有效。 | |
--transrccount | boolean | 在线生效 | 下一次事务中生效 | 是否使用读已提交来处理 count() 查询。默认为 true。只有当 transaction 开启时,且隔离级别为读已提交 RC 或者读稳定性 RS,取值才会有效。 | |
--logwritemod | str | 下一次事务中生效 | 复制日志写模式,取值:increment,full,默认为increment。为increment时,复制日志只保存更新记录的增量信息;为full时,复制日志将保存更新记录的完整信息。 | ||
--logtimeon | boolean | 下一次事务中生效 | 开启复制日志保存时间信息功能,默认为false。 | ||
--maxsocketpernode | num | 在线生效 | 两个节点之间的最大连接数,取值范围:[1,100],默认为5。 | ||
--maxsocketperthread | num | 在线生效 | 一个线程驱动最大连接数,0表示不限制,默认为1。 | ||
--maxsocketthread | num | 在线生效 | 通信最大驱动线程数,取值范围[1,100],默认10。 | ||
--monslowquerythreshold | num | 在线生效 | 慢查询监控的阈值,单位:毫秒,默认为300。 | ||
--mongroupmask | str | 在线生效 | 指定监控组的监控级别。格式为"组名:监控级别",默认值为 "all:off"。 1. 组名的取值如下: ● slowQuery: 监控慢查询组。 ● all: 监控所有组(目前只支持监控慢查询组)。 2. 监控级别的取值如下: ● off: 关闭监控。 ● detail: 返回详细的监控信息。 |
||
--ftmask | str | 在线生效 | 指定开启容错处理的掩码,默认值为"NOSPC|DEADSYNC",取值如下: ● "NOSPC":磁盘空间不足 ● "DEADSYNC":节点数据不同步 ● "SLOWNODE":节点数据同步过慢 ● "ALL":开启所有容错处理 ● "NONE":关闭所有容错处理 |
||
--ftconfirmperiod | num | 在线生效 | 故障确认的时间周期,默认为60,取值范围:[1,3600],单位为秒 | ||
--ftconfirmratio | num | 在线生效 | 故障确认的故障比阈值,默认为80,取值范围:[1,100],单位为百分比 | ||
--ftlevel | num | 在线生效 | 容错级别,1(熔断), 2(半容错), 3(全容错). 默认为2 | ||
--ftfusingtimeout | num | 在线生效 | 熔断超时时间,默认为10,取值范围:[0,3600],单位:秒 | ||
--ftslownodethreshold | num | 在线生效 | 慢节点检测的日志差阈值,默认:256,取值范围:[1,10000],单位:MB | ||
--ftslownodeincrement | num | 在线生效 | 慢节点检测的日志增量值,默认:8,取值范围:[0,10000],单位:MB | ||
--syncwaittimeout | num | 在线生效 | 数据一致性同步等待超时时间,默认为600,取值范围:[1,3600],单位:秒 | ||
--shutdownwaittimeout | num | 在线生效 | 主数据节点停机时等待备节点数据同步超时时间,默认为1200,取值范围:[0,864000],单位:秒 | ||
--servicemask | str | 重启生效 | 屏蔽服务端口的掩码,取值为 LOCAL、REPL、SHARD、CATALOG 和 REST,可以使用'|'连接多个值,默认值为 NONE。 LOCAL:禁用本地服务端口。如果禁用协调节点的本地服务端口,会导致数据库不能为客户端提供服务。 REPL:禁用数据同步服务端口。如果禁用编目节点或数据节点的数据同步服务端口,会导致主节点和备节点数据不一致,通常不应该禁用。 SHARD:禁用数据分区服务端口。如果禁用任一节点的数据分区服务端口,会导致数据操作失败,通常不应该禁用。 CATALOG:禁用编目服务端口。如果禁用编目节点的编目服务端口,会导致节点操作失败、数据操作失败,通常不应该禁用。 REST:禁用 REST 服务端口。如果禁用节点的 REST 服务端口,会导致该节点不能提供 REST 服务。 |
||
--indexcoveron | boolean | 在线生效 | 开启覆盖索引功能,默认为true。 | ||
--maxcontextnum | int | 在线生效 | 1. 节点中最多可以同时开启的上下文个数。 2. 默认是100000,取值范围是 0 和 [ 1000, 231-1 ]。 3. 如果节点中同时开启的上下文个数达到上限,新开启的上下文将会报错。 4. 取值为0,表示对上下文的个数没有限制。 |
||
--maxsessioncontextnum | int | 在线生效 | 1. 会话在每个节点中最多可以同时开启的上下文个数。 2. 默认是100,取值范围是 0 和 [ 10, 231-1 ]。 3. 如果会话在节点中同时开启的上下文个数达到上限,会话新开启的上下文将会报错。 4. 取值为0,表示对会话的上下文的个数没有限制。 |
||
--diagsecureon | boolean | 在线生效 | 开启节点诊断日志的数据脱敏功能,默认值为 true,表示已开启。 在开启该功能的情况下,当用户对数据进行操作后,数据库将对日志中所涉及的业务数据进行加密,以保证数据安全性。 |
||
--metacacheexpired | num | 在线生效 | 元数据缓存的过期时间(分钟)。过期的缓存将被清理掉(当前仅对协调节点生效)。默认值:30,0表示不过期,取值范围[0, 43200]。 | ||
--metacachelwm | num | 在线生效 | 元数据缓存占用内存的低水位线。当占用内存低于该值时(单位:MB),缓存的元数据信息不会被后台任务删除。默认值:512,取值范围[0, 10240]。 |
Note:
1. “生效类型”为在线生效的配置能进行在线修改,不需要重启就能生效。
2. “生效类型”为重启生效的配置能进行在线修改,需要重启后生效。
3. “生效类型”为空的配置不能进行在线修改。同步日志参数 logfilesz 和 logfilenum 虽然不能在线修改配置,但是可以通过特殊方式进行修改,可参考 logfilesz/logfilenum。