注册
sysbench压测达梦
专栏/培训园地/ 文章详情 /

sysbench压测达梦

new zero 2025/04/21 85 1 0
摘要

下载zip

github下载

su - root
unzip sysbench-master.zip

安装依赖包

su - root
yum -y install make automake libtool pkgconfig libaio-devel

生成配置文件

cd sysbench-master/
./autogen.sh

执行配置文件

vi ~/.bash_profile
export DM_HOME=/dm8
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin
export PATH=$PATH:$DM_HOME/bin

./configure --without-mysql --with-dm

编译并且安装

make 报错:
drv_dpi_dm.c:29:20: fatal error: DPIext.h: No such file or directory
#include "DPIext.h"
解决方法:
su - root
cd /dm8/include/
cp * /opt/sysbench-master/src/drivers/dm/

然后重新 make

报错:
undefined reference to `shm_unlink'
解决方法:
手动执行命令
/bin/sh ../libtool --tag=CC --mode=link gcc -std=gnu99 -Wall -Wextra -Wpointer-arith -Wbad-function-cast -Wstrict-prototypes -Wnested-externs -Wno-format-zero-length -Wundef -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wcast-align -Wvla -pthread -O3 -funroll-loops -rdynamic -L/usr/local/lib -o sysbench sysbench.o sb_timer.o sb_options.o sb_logger.o db_driver.o sb_histogram.o sb_rand.o sb_thread.o sb_barrier.o sb_lua.o sb_util.o sb_counter.o tests/fileio/libsbfileio.a tests/threads/libsbthreads.a tests/memory/libsbmemory.a tests/cpu/libsbcpu.a tests/mutex/libsbmutex.a drivers/dm/libsbdm.a /dm8/include/libdmdpi.a /opt/sysbench-master/third_party/luajit/lib/libluajit-5.1.a -ldl /opt/sysbench-master/third_party/concurrency_kit/lib/libck.a -laio -lm -lrt

make install

sysbench --help |grep dm -B2

压测

创建表空间和用户

CREATE TABLESPACE SYSBENCHDB DATAFILE'/dm8/data/DAMENG/sysbenchdb01.dbf' SIZE 2048;
CREATE TABLESPACE INDEXTS DATAFILE'/dm8/data/DAMENG/indexts01.dbf' SIZE 1024;

DROP USER TUSER CASCADE;
CREATE USER TUSER IDENTIFIED BY "123456789";
GRANT DBA TO TUSER;
ALTER USER TUSER DEFAULT TABLESPACE SYSBENCHDB;

调整建表语句

su - root
cd /usr/local/share/sysbench
vim oltp_common.lua +200
elseif drv:name() == "dm"
then
if sysbench.opt.auto_inc then
id_def = "INTEGER AUTO_INCREMENT NOT NULL"
else
id_def = "INTEGER NOT NULL"
end
engine_def=" STORAGE( FILLFACTOR 50 ) "

造数据

cd /usr/local/share/sysbench
sysbench oltp_read_write.lua --tables=20 --table-size=10000 --db-driver=dm --dm-db=127.0.0.1:5236 --dm-user=TUSER --dm-password=123456789 --auto-inc=1 --threads=40 --time=300 --report-interval=10 prepare

压测

测试之前清理操作系统的PageCache。

echo 3 > /proc/sys/vm/drop_caches
sleep 10

sysbench oltp_read_only.lua --tables=20 --table-size=10000 --db-driver=dm --dm-db=127.0.0.1:5236 --dm-user=TUSER --dm-password=123456789 --auto-inc=1 --threads=8 --time=60 --report-interval=10 run

sysbench oltp_read_write.lua --tables=20 --table-size=10000 --db-driver=dm --dm-db=127.0.0.1:5236 --dm-user=TUSER --dm-password=123456789 --auto-inc=1 --threads=8 --time=60 --report-interval=10 run

清理数据

sysbench oltp_read_write.lua --tables=20 --table-size=10000 --db-driver=dm --dm-db=127.0.0.1:5236 --dm-user=TUSER --dm-password=123456789 --auto-inc=1 --threads=100 --time=180 --report-interval=10 cleanup

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服