deleteConf()

语法

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

恢复配置默认值,进行配置动态生效,并将配置从配置文件中删除。重启生效的配置需重启后生效,禁止修改的配置则不允许修改。

参数描述

参数名参数类型描述是否必填
configJson对象配置参数,包含配置名和占位符,例如:{ preferedinstance:1, diaglevel:1 },其中 1 没有特殊含义,仅作为占位符出现。
optionsJson对象命令位置参数

Note:

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

返回值

无返回值,出错抛异常,并输出错误信息。可以通过 getLastErrObj()getLastErrMsg() 获取错误信息 或 通过 getLastError() 获取错误码。更多错误可以参考常见错误处理指南

版本信息

2.9及以上版本

示例

  • 删除数据节点 20000 上的 diaglevel 参数,恢复其默认值。
  1. // 连接协调节点
  2. > db = new Sdb( "localhost", 11810 )
  3. > db.deleteConf( { diaglevel:1 }, { GroupName:"db1", ServiceName:"20000" } )
  • 删除数据组 db2 上所有数据节点的 preferedinstance 和 diaglevel 参数,恢复默认值。
  1. // 连接协调节点
  2. > db = new Sdb( "localhost", 11810 )
  3. > db.deleteConf( { preferedinstance:1, diaglevel:1 }, { GroupName:"db2" } )
  • 报错时获取详细错误信息。
  1. // 连接协调节点
  2. > db = new Sdb( "localhost", 11810 )
  3. // 进行参数配置,报错
  4. > db.deleteConf( { transactionon:1 }, { ServiceName:"20000" } )
  5. (nofile):0 uncaught exception: -264
  6. One or more nodes did not complete successfully
  7. Takes 0.009322s.
  8. // 获取详细报错信息,了解到 transactionon 参数需要重启生效
  9. > getLastErrObj()
  10. {
  11. "errno": -264,
  12. "description": "One or more nodes did not complete successfully",
  13. "detail": "",
  14. "ErrNodes": [
  15. {
  16. "NodeName": "ubuntu-zwb:20000",
  17. "GroupName": "db1",
  18. "Flag": -322,
  19. "ErrInfo": {
  20. "errno": -322,
  21. "description": "Some configuration changes didn't take effect",
  22. "detail": "Config 'transactionon' require(s) restart to take effect."
  23. }
  24. }
  25. ]
  26. }
  27. Takes 0.004652s.