searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

SYSBENCH在KYLINV10下的编译安装与压力测试结果分析

2023-10-26 02:28:49
41
0

以下步骤在kylinv10上进行:


下载

```
wget h...s://github.com/akopytov/sysbench/archive/1.0.zip -O sysbench-1.0.zip
```

解压
```
unzip sysbench-1.0.zip
cd sysbench-1.0/
```

安装依赖库

```
yum install automake libtool mysql-devel  zstd-devel
# 缺少mysql-devel  configure步骤会失败
# 缺少 zstd-devel  make步骤会失败
```

编译安装

```
./autogen.sh
./configure
make
make install
```

检查安装是否成功

```
sysbench --version
```

 

 

lua目录


```
/root/sysbench-1.0/tests/include/inspect.lua
/root/sysbench-1.0/tests/include/oltp_legacy/bulk_insert.lua
/root/sysbench-1.0/tests/include/oltp_legacy/common.lua
/root/sysbench-1.0/tests/include/oltp_legacy/delete.lua
/root/sysbench-1.0/tests/include/oltp_legacy/insert.lua
/root/sysbench-1.0/tests/include/oltp_legacy/oltp.lua
/root/sysbench-1.0/tests/include/oltp_legacy/oltp_simple.lua
/root/sysbench-1.0/tests/include/oltp_legacy/parallel_prepare.lua
/root/sysbench-1.0/tests/include/oltp_legacy/select.lua
/root/sysbench-1.0/tests/include/oltp_legacy/select_random_points.lua
/root/sysbench-1.0/tests/include/oltp_legacy/select_random_ranges.lua
/root/sysbench-1.0/tests/include/oltp_legacy/update_index.lua
/root/sysbench-1.0/tests/include/oltp_legacy/update_non_index.lua


```


压力测试

1. 安装tmux,避免终端退出

```
yum install -y tmux

tmux new -s sysbench

新建会话tmux new -s my_session
在 Tmux 窗口运行所需的程序
按下快捷键Ctrl+b d将会话分离
下次使用时,重新连接到会话tmux attach-session -t my_session
```

2. 创建测试数据库

```
mysql  -u root -P4000 -h 1.1.1.1  -p'123456'
create database sbtest;
use mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;
```
3. 创建测试表
```

 

sysbench --mysql-host=1.1.1.1 --mysql-port=4000 --mysql-user=root \
--mysql-password='123456' \
--test=tests/include/oltp_legacy/oltp.lua --oltp_tables_count=10 \
--oltp-table-size=100000 --rand-init=on prepare
```


4. 压力测试


```
sysbench --mysql-host=1.1.1.1 --mysql-port=4000 --mysql-user=root \
--mysql-password=123456 --test=tests/include/oltp_legacy/oltp.lua --oltp_tables_count=10 \
--oltp-table-size=10000000 --num-threads=8 --oltp-read-only=off \
--report-interval=10 --rand-type=uniform --max-time=3600 \
--max-requests=0 --percentile=99 run >> ./log/sysbench_oltp20221215.log
 
 
 #几个选项稍微解释下

--num-threads=8 表示发起 8个并发连接
--oltp-read-only=off 表示不要进行只读测试,也就是会采用读写混合模式测试
--report-interval=10 表示每10秒输出一次测试进度报告
--rand-type=uniform 表示随机类型为固定模式,其他几个可选随机模式:uniform(固定),gaussian(高斯),special(特定的),pareto(帕累托)
--max-time=120 表示最大执行时长为 120秒
--max-requests=0 表示总请求数为 0,因为上面已经定义了总执行时长,所以总请求数可以设定为 0;也可以只设定总请求数,不设定最大执行时长
--percentile=99 表示设定采样比例,默认是 95%,即丢弃1%的长请求,在剩余的99%里取最大值

即:模拟 对10个表并发OLTP测试,每个表1000万行记录,持续压测时间为 1小时。
```

0条评论
0 / 1000
z****n
3文章数
0粉丝数
z****n
3 文章 | 0 粉丝