sysbench for dm
背景
昨天晚上嘗試進行sysbench 給國產資料庫壓資料.
當時一直沒有成功編譯 for dm 的版本
今天諮詢了一下大佬,才發現自己找錯地方了
這裡記錄一下
下載
https://github.com/wuwen5/sysbench
下載好檔案:
tar -zxvf sysbench-1.1.0-beta-1.tar.gz
根據說明進行編譯
注意 必須安裝有 dm 客戶端才可以
不然會無法編譯和執行.
注意我這邊使用的是鯤鵬920+達夢8 ARM版本
export LDFLAGS=-lrt
export DM_HOME=/opt/dmdbms
./autogen.sh
注意如果沒有安裝 mysql-devel 的話 不建議帶mysql的
./configure --with-dm --with-dm-includes=/opt/dmdbms/include --without-mysql
提示資訊為:
MySQL support : no
PostgreSQL support : no
DM support : yes
執行 make 操作
簡單使用
其實 不進行make install 會在當前目錄的 src 下面形成具體的檔案.
簡單的測試為:
cd src
建議將 lua 目錄下的檔案複製到本層 這樣的話就可以直接his用了
scp -r lua/* .
然後執行
./sysbench --tables=5 --table-size=200000 \
--db-driver=dm --dm-db=127.0.0.1:5236 --dm-user=SYSDBA \
--dm-password=Perfxxxxxxxx --threads=16 --time=10 --report-interval=10 \
select_random_points.lua prepare
結果分析
注意 run 和 cleanup 分別是執行和清理表
比如我這邊一個簡單的結果:
[ 10s ] thds: 128 tps: 531.19 qps: 531.19 (r/w/o: 531.19/0.00/0.00) lat (ms,95%):
669.89 err/s: 0.00 reconn/s: 0.00
SQL statistics:
queries performed:
read: 5441
write: 0
other: 0
total: 5441
transactions: 5441 (527.93 per sec.)
queries: 5441 (527.93 per sec.)
ignored errors: 0 (0.00 per sec.)
reconnects: 0 (0.00 per sec.)
Throughput:
events/s (eps): 527.9272
time elapsed: 10.3063s
total number of events: 5441
Latency (ms):
min: 127.35
avg: 238.21
max: 725.05
95th percentile: 669.89
sum: 1296094.90
Threads fairness:
events (avg/stddev): 42.5078/13.50
execution time (avg/stddev): 10.1257/0.09
其實東西挺多的, 第一天先進行編譯 週末如果不累在學習其他部分.
./sysbench --tables=5 --table-size=200000 \
--db-driver=dm --dm-db=127.0.0.1:5236 --dm-user=SYSDBA \
--dm-password=Perfxxxxxxxx --threads=16 --time=10 \
--report-interval=10 oltp_insert.lua cleanup