文档中心

SequoiaDB 简介

快速入门

安装部署

数据库实例

分布式引擎

SAC 管控中心

SequoiaPerf 性能分析工具

参考手册

常见问题及解答(FAQ)

版本信息

updateConf()

名称

updateConf - 更新节点配置

语法

db.updateConf( <config>, [options] )

类别

Sdb

描述

该函数用于更新节点配置,并进行配置动态生效。重启生效的配置需重启后生效,禁止修改的配置则不允许修改。

参数

参数名 参数类型 描述 是否必填
config Json对象 配置参数,包含配置名和配置值,例如:{ preferredinstance:'A', diaglevel:3 }
options Json对象 命令位置参数

Note:

  • 参照数据库配置页面获取配置的动态生效、重启生效和禁止修改信息。
  • 动态生效和重启生效的配置都会写入配置文件中,成为固定的配置。
  • 重启生效和禁止修改配置的详细信息会通过错误信息返回值通知。
  • 若配置的值和数据库当前值相同,则重启生效和禁止修改配置不会报错。
  • 无命令位置参数时,缺省对所有节点生效,即使用 {Global:true} 的命令位置参数。
  • 可以通过 snapshot 获取指定节点的当前配置。

返回值

函数执行成功时,无返回值。

函数执行失败时,将抛异常并输出错误信息。

错误

当异常抛出时,可以通过 getLastErrMsg() 获取错误信息或通过 getLastError() 获取错误码。更多错误处理可以参考常见错误处理指南

版本

v2.9 及以上版本

示例

  • 配置数据节点 20000 上的 diaglevel 参数。

    // 连接协调节点
    > db = new Sdb( "localhost", 11810 )
    > db.updateConf( { diaglevel:3 }, { GroupName:"db1", ServiceName:"20000" } )
  • 配置数据组 db2 上所有数据节点的 preferredinstance 和 diaglevel 参数。

    // 连接协调节点
    > db = new Sdb( "localhost", 11810 )
    > db.updateConf( { preferredinstance:'A', diaglevel:3 }, { GroupName:"db2" } )
  • 报错时获取详细错误信息。

    // 连接协调节点
    > db = new Sdb( "localhost", 11810 )
    // 进行参数配置,报错
    > db.updateConf( { transactionon:'true' }, { ServiceName:"20000" } )
      (nofile):0 uncaught exception: -264
      One or more nodes did not complete successfully
      Takes 0.009322s.
    // 获取详细报错信息,了解到 transactionon 参数需要重启生效
    > getLastErrObj()
       {
           "errno": -264,
           "description": "One or more nodes did not complete successfully",
           "detail": "",
           "ErrNodes": [
           {
               "NodeName": "ubuntu-zwb:20000",
               "GroupName": "db1",
               "Flag": -322,
               "ErrInfo": {
               "errno": -322,
               "description": "Some configuration changes didn't take effect",
               "detail": "Config 'transactionon' require(s) restart to take effect."
               }
           }
           ]
       }
回到顶部