updateConf - 更新节点配置
db.updateConf( <config>, [options] )
Sdb
该函数用于更新节点配置,并进行配置动态生效。重启生效的配置需重启后生效,禁止修改的配置则不允许修改。
| 参数名 | 参数类型 | 描述 | 是否必填 | 
|---|---|---|---|
| config | Json对象 | 配置参数,包含配置名和配置值,例如:{ preferredinstance:'A', diaglevel:3 } | 是 | 
| options | Json对象 | 命令位置参数 | 否 | 
Note:
函数执行成功时,无返回值。
函数执行失败时,将抛异常并输出错误信息。
当异常抛出时,可以通过 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."
           }
       }
       ]
   }