未验证 提交 e7eb39b6 编写于 作者: L LIN 提交者: GitHub

Merge pull request #132 from hnwyllmm/obd-tpcc

add obd test tpcc
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
OBD 有多级命令,您可以在每个层级中使用 `-h/--help` 选项查看子命令的帮助信息。本文将介绍 OBD 中测试命令的使用。 OBD 有多级命令,您可以在每个层级中使用 `-h/--help` 选项查看子命令的帮助信息。本文将介绍 OBD 中测试命令的使用。
## bd test mysqltest ## obd test mysqltest
使用该命令可对 OcecanBase 数据库或 ODP 组件的指定节点执行 mysqltest。 使用该命令可对 OcecanBase 数据库或 ODP 组件的指定节点执行 mysqltest。
...@@ -110,15 +110,62 @@ obd test tpch <deploy name> [flags] ...@@ -110,15 +110,62 @@ obd test tpch <deploy name> [flags]
| --dt/--disable-transfer | 否 | bool | false | 禁用传输。开启后将不会把本地 tbl 传输到远程 `remote-tbl-dir` 下,而是直接使用目标机器 `remote-tbl-dir` 下的 `tbl` 文件。 | | --dt/--disable-transfer | 否 | bool | false | 禁用传输。开启后将不会把本地 tbl 传输到远程 `remote-tbl-dir` 下,而是直接使用目标机器 `remote-tbl-dir` 下的 `tbl` 文件。 |
| -O/--optimization | 否 | int | 1 | 自动调优等级。为 `0` 时关闭。 | | -O/--optimization | 否 | int | 1 | 自动调优等级。为 `0` 时关闭。 |
## obd test tpcc
使用该命令可对 OcecanBase 数据库或 ODP 组件的指定节点执行 TPC-C。
执行 TPC-H 需要 OBClient 、obtpcc和jdk,请确认您已安装。如果您的系统可以使用yum管理包,可以执行下面的命令安装这几个依赖:
```bash
yum install -y obtpcc obclient java-1.8.0-openjdk.x86_64
```
obd 默认使用test租户做测试,如果要使用指定租户做测试,可以使用--tenant参数指定。或者使用下面的命令创建 test 租户:
```bash
obd cluster tenant create <deploy name>
```
在执行 TPC-C 测试前,OBD 会将测试需要的数据文件传输到指定机器的指定目录下,这些文件可能会比较大,请确保机器上足够的磁盘空间。 如果是要多次运行测试,可以在第2次和之后
```shell
obd test tpcc <deploy name> [flags]
```
参数 `deploy name` 为集群名称,一个集群只能有一个名称,且集群名称不能重复。
选项说明见下表:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
| ----------------------- | -------- | -------- | ---------------------------------- | ------------------------------------------------------------ |
| --component | 否 | string | 默认为空 | 待测试的组件名。候选项为 `oceanbase-ce``obproxy`。为空时,按 `obproxy``oceanbase-ce` 的顺序进行检查。检查到组件存在则不再遍历,使用命中的组件进行后续测试。 |
| --test-server | 否 | string | 默指定的组件下服务器中的第一个节点 | 必须是指定的组件下的某个节点名。 |
| --user | 否 | string | root | 执行测试的用户名。 |
| --password | 否 | string | 默认为空 | 执行测试的用户密码。 |
| -t/--tenant | 否 | string | test | 执行测试的租户名,请确保该租户已经创建。 |
| --database | 否 | string | test | 执行测试的数据库,如没有创建,测试程序会自动创建。 |
| --obclient-bin | 否 | string | obclient | OBClient 二进制文件路径。 |
| --java-bin | 否 | string | java | Java 二进制文件路径。 |
| --tmp-dir | 否 | string | ./tmp | 运行TPC-C 测试使用的临时目录。 |
| --bmsql-dir | 否 | string | 系统目录 | BenchmarkSQL 的目录。 |
| --bmsql-jar | 否 | string | 系统目录 | BenchmarkSQL Jar 路径。 |
| --bmsql-libs | 否 | string | 系统目录 | BenchmarkSQL lib 路径。 |
| --warehouses | 否 | int | 10 | warehouses 的数量。 |
| --load-workers | 否 | int | 默认为空 | 加载数据的worker数量。 |
| --terminals | 否 | int | 默认为空 | terminal 的个数。 |
| --run-mins | 否 | int | 10 | 指定运行时间,单位分钟。 |
| --test-only | 否 | bool | false | 不执行初始化,仅执行测试 SQL。 |
| -O/--optimization | 否 | int | 1 | 自动调优等级。为 `0` 时关闭;1 表示优化一些不需要重启的参数;2 调优所有参数并且在必要时重启。 |
## 备注 ## 备注
请先安装 obtpch 和 ob-sysbench,并保证系统可以联网。 请先安装 ob-sysbench、obtpch 和 obtpcc,并保证系统可以联网。
```shell ```shell
sudo yum install -y yum-utils sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
sudo yum install -y obtpch
sudo yum install -y ob-sysbench sudo yum install -y ob-sysbench
sudo yum install -y obtpch
sudo yum install -y obtpcc
``` ```
因为 obtpch 安装包有个小 bug,详情参考 <https://github.com/oceanbase/obdeploy/issues/88> (下个版本会 fix 掉),建议做一个软链接。 因为 obtpch 安装包有个小 bug,详情参考 <https://github.com/oceanbase/obdeploy/issues/88> (下个版本会 fix 掉),建议做一个软链接。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册