# 工具命令组 OBD 提供了一系列工具命令,其中封装了一些常用命令,可用于提升开发者的使用体验。 ## obd devmode enable 使用该命令可以开启开发者模式,是使用工具命令组的前提。开启开发者模式后,会出现部分异常报错被降级,OBD 忽略异常参数等情况。非内核开发人员请谨慎使用。 ```shell obd devmode enable ``` ## obd devmode disable 使用该命令可关闭开发者模式。 ```shell obd devmode disable ``` ## obd env show 使用该命令可展示 OBD 的环境变量。 ```shell obd env show ``` ## obd env set 使用该命令可设置 OBD 的环境变量,这些环境变量会一定程度的影响 OBD 的表现,若没有特别需求不建议使用该命令。 ```shell obd env set [key] [value] ``` 可设置的参数有: * OBD_DISABLE_RSYNC:参数值可设置为 0 或 1,在符合条件的情况下 OBD 会使用 rsync 进行远程传输,当该环境变量为 1 时,禁止使用 rsync 命令。 * OBD_DEV_MODE::开发者模式是否开启,可选值为 0 或 1。 ## obd env unset 使用该命令可删除指定环境变量。 ```shell obd env unset [key] [value] ``` ## obd env clear 使用该命令可清理 OBD 的环境变量,请谨慎使用。 ```shell obd env clear ``` ## obd tool command 使用该命令可执行一些常用的命令。 ```shell obd tool command [options] ``` 命令包含: * pid:查看服务的 pid(非交互式命令) * ssh:登录到目标 server 并进入 log 目录(交互式命令) * less:查看目标服务的日志(交互式命令) * gdb:gdb attach 到模板服务(交互式命令) 参数说明见下表 | 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 | |-----------------|------|--------|-------------------------------------------------------|---------------------------| | -c/--components | 否 | string | 如果是交互式命令默认按照配置文件顺序选择第一个组件,如果是非交互式命令,则默认使用所有组件 | 需要执行命令的组件名。多个组件名以 `,` 相隔。 | | -s/--servers | 否 | string | 如果是交互式命令默认按照配置文件顺序选择当前组件的第一个节点名,如果是非交互式命令,则默认使用所有可用节点 | 指定的组件下的节点名。多个节点名以 `,` 相隔。 | ## obd tool db_connect 使用该命令可建立数据库连接。 ```shell obd tool db_connect [options] ``` 参数 `deploy name` 为部署集群名,可以理解为配置文件的别名。 参数说明见下表 | 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 | |---------------------|------|--------|---------------------------|-------------------------------------------------------------------| | -c/--component | 否 | string | 默认按照配置文件顺序选择第一个组件 | 待连接的组件名。候选项为 `obproxy`、`obproxy-ce`、`oceanbase` 和 `oceanbase-ce`。 | | -s/--server | 否 | string | 默认按照配置文件顺序选择当前组件的第一个节点名 | 指定的组件下的节点名。 | | -u/--user | 否 | string | root | 数据库连接使用的用户名。 | | -p/--password | 否 | string | 默认为空 | 数据库连接使用的密码。 | | -t/--tenant | 否 | string | sys | 数据库连接使用的租户。 | | -D/--database | 否 | string | 默认为空 | 数据库连接使用的数据库名称。 | | --obclient-bin | 否 | string | obclient | OBClient 二进制文件路径。 |