Centos 7部署sysbench测试Opengauss/MogDB性能

适配环境 操作系统版本:Red Hat Enterprise Linux Server release 7.9 (Maipo) 数据库版本:MogDB 5.0.3

mogdb快速安装

1、获取PTK
复制代码
$ curl --proto '=https' --tlsv1.2 -sSf https://cdn-mogdb.enmotech.com/ptk/install.sh | sh
2、生成config.yaml
复制代码
$ ptk template --local > config.yaml
3、安装MogDB
复制代码
$ ptk install -f config.yaml
4、建库
复制代码
su - omm
gsql -r 
create user sysbench identified by 'PWbmsql0' profile default; 
alter user sysbench sysadmin; 
create database sysbench encoding 'UTF8'template=template0 owner sysbench; 

安装sysbench

1、安装yum包
复制代码
yum -y install make automake libtool pkgconfig libaio-devel
yum -y install mariadb-devel openssl-devel
yum -y install postgresql-devel

如果yum存在问题 •例如报错

复制代码
 [root@mogdb-dev-011 sysbench-1.0]# yum 
   File "/usr/bin/yum", line 30 
     except KeyboardInterrupt, e: 
                             ^ 
 SyntaxError: invalid syntax 

原因在于python版本,环境版本是3.8, 而yum要求的版本是2.x 因此需要更改yum的版本信息

复制代码
 vim /usr/bin/yum  
  将文件头 #!/usr/bin/python   修改为  #!/usr/bin/python2 
  同时还有/usr/libexec/urlgrabber-ext-down 也需要修改文件头 
2、下载sysbench和dep

++由于使用不同的密码安全策略,我们无法使用默认的postgresql库对mogdb进行基准测试,所以需要下载特定的libpq++ sysbench手工下载: https://github.com/akopytov/sysbench

复制代码
cd  /home/omm
wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/5.0.0/x86/openGauss-5.0.0-CentOS-64bit-Libpq.tar.gz --下载opengauss的libpq
cd /root
wget https://github.com/akopytov/sysbench/archive/refs/heads/master.zip --下载sysbench源码
3、源码编译sysbench
复制代码
cd /home/omm
tar -xf openGauss-5.0.0-CentOS-64bit-Libpq.tar.gz
cd /root
unzip master.zip
mv sysbench-master sysbench

cd sysbench
./autogen.sh

export LD_LIBRARY_PATH=/home/omm/lib:$LD_LIBRARY_PATH 

指定opengauss的/home/omm/include和/home/omm/lib
./configure --prefix=/home/omm/sysbench --without-mysql \
--with-pgsql \
--with-pgsql-includes=/home/omm/include \
--with-pgsql-libs=/home/omm/lib
 
make -j
make install 

sysbench测试

1、准备数据

2个表一千万条记录

复制代码
./bin/sysbench oltp_read_only \
--db-driver=pgsql \
--pgsql-host=127.0.0.1 \
--pgsql-port=26000 \
--pgsql-user=sysbench  \
--pgsql-password=PWbmsql0 \
--pgsql-db=sysbench  \
--threads=8  \
--table_size=10000000 \
prepare
2、只读场景测试
复制代码
./bin/sysbench oltp_read_only \
--db-driver=pgsql \
--pgsql-host=127.0.0.1 \
--pgsql-port=26000 \
--pgsql-user=sysbench  \
--pgsql-password=PWbmsql0 \
--pgsql-db=sysbench  \
--threads=128  \
--time=30 \
--tables=2 \
--threads=10 \
--table_size=10000000 \
--report-interval=2 \
run
3、只写场景测试
复制代码
./bin/sysbench oltp_write_only \
--db-driver=pgsql \
--pgsql-host=127.0.0.1 \
--pgsql-port=26000 \
--pgsql-user=sysbench  \
--pgsql-password=PWbmsql0 \
--pgsql-db=sysbench  \
--threads=128  \
--time=30 \
--tables=2 \
--threads=10 \
--table_size=10000000 \
--report-interval=2 \
run
4、混合读写场景测试
复制代码
./bin/sysbench oltp_read_write \
--db-driver=pgsql \
--pgsql-host=127.0.0.1 \
--pgsql-port=26000 \
--pgsql-user=sysbench  \
--pgsql-password=PWbmsql0 \
--pgsql-db=sysbench  \
--threads=128  \
--time=30 \
--tables=2 \
--threads=10 \
--table_size=10000000 \
--report-interval=2 \
run

本文由mdnice多平台发布

相关推荐
To_OC2 小时前
手写 AI 编程 Agent 的命令执行工具:我被 child_process 坑出来的实战经验
后端·node.js·agent
逝水无殇4 小时前
C# 异常处理详解
开发语言·后端·c#
考虑考虑7 小时前
Sentinel安装
java·后端·微服务
IT_陈寒7 小时前
SpringBoot自动配置失灵?你可能忘了这个关键注解
前端·人工智能·后端
碎碎念_4927 小时前
SpringBoot + Vue 前后端分离从 0 到 1 完整环境配置流程
vue.js·spring boot·后端
逝水无殇7 小时前
C# 文件的输入与输出详解
开发语言·数据库·后端·c#
YIAN7 小时前
从手写 Agent 工具到 MCP 协议:一文搞懂大模型跨进程跨语言工具调用
后端·agent·mcp
小兔崽子去哪了8 小时前
Docker 删除镜像后磁盘空间没有释放?
后端·docker·容器
高明珠8 小时前
麒麟 V10 SP1 排查实录:ttyS5 每 10 秒莫名收到一批报文,元凶是 eGTouchD
后端
卷无止境8 小时前
Python FFI 技术深度解析:ctypes、cffi 与 pybind11 的性能差异与实践挑战
后端·python