【SysBench】Linux 安装 sysbench-1.20

安装目的是为了对 MySQL 8.0.xPostgreSQL 进行基准测试。

0、sysbench 简介

sysbench 是一个可编写脚本的多线程基准测试工具,基于

LuaJIT 。 它最常用于数据库基准测试,但也可以

用于创建任意不涉及数据库服务器的复杂工作负载。

sysbench 附带以下捆绑基准测试:

  • oltp_*.lua: 一组类-OLTP 的数据库基准测试
  • fileio: 文件系统级基准测试
  • cpu: 简单的CPU基准测试
  • memory: 内存访问基准测试
  • threads: 基于线程的调度器基准测试
  • mutex: POSIX 互斥(量)基准测试

特性

  • 提供了有关速率和延迟的大量统计信息,包括
    延迟百分比和直方图;
  • 即使有数千个并发线程,开销也很低。sysbench 能够每秒生成和跟踪数亿个事件;
  • 通过在用户提供的 Lua 脚本中实现预定义的钩子(hook),可以容易地创建新的基准;
  • 也可以用作通用 Lua 解释器,只需在脚本中替换 #!/usr/bin/lua#!/usr/bin/sysbench

1、二进制包安装

在 Linux 上下载和安装 sysbench 最简单的方法是使用

托管的二进制包存储库 packagecloud 。存储库是在每个 sysbench 版本上自动更新。目前为 x86_64i386aarch64 二进制文件可用。

RHEL/CentOS:

bash 复制代码
  curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.rpm.sh | sudo bash
  sudo yum -y install sysbench

2、源码安装

2.1 前置条件

在安装 sysbench 源码前需要安装一些必需的工具包。

bash 复制代码
yum -y install make automake libtool pkgconfig libaio-devel
# For MySQL support, replace with mysql-devel on RHEL/CentOS 5
yum -y install mysql-community-devel.x86_64 openssl-devel
# For PostgreSQL support
yum -y install postgresql-devel

如果长时间未更新 MySQL ,安装 mysql-community-devel 包时可能会出现 gpg 警告与报错。笔者所用的这台虚拟机就遇到了。参考 解决【获取 GPG 密钥失败:"Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022"】 解决。

2.2 编译 SysBench

bash 复制代码
./autogen.sh
# Add --with-pgsql to build with PostgreSQL support
./configure --with-pgsql
make -j
make install

安装后 sysbench 的二进制可执行文件默认位于 /usr/local/bin/sysbench ,脚本目录位于 /usr/local/share/sysbench 。可通过如下命令查看:

bash 复制代码
which sysbench
# 或 whereis sysbench
find / -name sysbench

3、验证安装

bash 复制代码
sysbench --version

如下图所示显示版本号即安装成功。


下一篇将介绍如何使用 sysbench 完成 CPU、I/O、OLTP 等基准测试。

相关推荐
一叶龙洲1 小时前
win11与Ubuntu之间同步配置、插件
linux·运维·ubuntu
CHANG_THE_WORLD2 小时前
12.总结:深入理解 Linux I/O 多路复用:select、poll、epoll 全解析
linux·运维·服务器
风曦Kisaki2 小时前
# Linux笔记:操作系统优化与资源管理
linux·运维·服务器·笔记
Mr.HeBoYan3 小时前
一次持续三天才出现的丢包故障——深入解析 DPDK Memory Ordering、rte_ring 与 CPU Memory Barrier (下)
linux·网络·算法·架构·dpdk
zhangrelay4 小时前
笔记本轻量高品质延寿工具完整分系统清单
运维·笔记·学习
初願致夕霞4 小时前
C++懒汉单例设计详解
服务器·开发语言·c++
Discipline~Hai5 小时前
ARM01-ARM体系架构
linux·c语言·arm开发·架构
RisunJan5 小时前
Linux命令-screen(终端复用器)
linux·运维
啊哦1116 小时前
安装VMware Workstation
linux·运维·服务器
持敬chijing6 小时前
Linux基础命令与目录命令
linux·运维·服务器