• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    MySQL性能压力基准测试工具sysbench的使用简介

    1、sysbench介绍

    这里介绍一款MySQL数据库的压力测试软件sysbench,用它来进行基准测试。

    sysbench 是一个开源的、模块化的、跨平台的多线程性能测试工具,

    可以用来进行CPU、内存、磁盘I/O、线程、数据库的性能测试。

    目前支持的数据库有MySQL、Oracle 和PostgreSQL。

    #项目下载地址:

    https://launchpad.net/sysbench
    http://github.com/akopytov/sysbench

    该基准套件的想法是快速获得有关系统性能的印象,而无需设置复杂的数据库基准,甚至不需要安装数据库。
    当前功能允许测试以下系统参数:

    Sysbench的oltp主要用于评估测试各种不同系统参数下的数据库负载情况。
    相比0.4版本,后续的版本oltp测试主要结合了lua脚本,不需要修改源码,通过自定义lua脚本就可以实现不同业务类型的测试。 

    SysBench的缺点:
    模拟的表结构太简单,不像tpcc-mysql那样完整的事务系统,但对于MySQL性能压测对比还是很有用的。

    2、sysbench安装过程

    #安装相关依赖

    mount /dev/cdrom /mnt
    yum -y install make automake libtool pkgconfig libaio-devel libtool

    #安装过程开始

    #客户端lib包做个链接
    ln -sf /mysql/app/mysql/lib/libmysqlclient.so.20 /usr/lib/libmysqlclient.so.20
    #解压安装
    cd /softtar zxvf sysbench-1.0.15.tar.gzcd sysbench-1.0.15./autogen.sh
    ./configure --prefix=/mysql/app/sysbench --with-mysql=/mysql/app/mysql --with-mysql-includes=/mysql/app/mysql/include/
    #--with-mysql-libs=/usr/lib/
    make  make install
    #配置环境变量
    vi ~/.bash_profile
    PATH=$PATH:/mysql/app/sysbench/bin:$HOME/bin
    source ~/.bash_profile
    sysbench --version
    #如果提示报错
    sysbench: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory
    
    #接着在/etc/ld.so.cnf中加入/usr/lib这一行
    [root@tse01 local]# cat /etc/ld.so.conf
    include ld.so.conf.d/*.conf
    /usr/lib/
    #执行ldconfig -v更新下配置就可以了
    [root@tse01 local]# /sbin/ldconfig -v

    #提示说明:

    如果你在非标准位置安装的MySQL头文件和库(没有 mysql_config可以在找到PATH),

    你可以明确指定--with-mysql-includes和--with-mysql-libs选项参数,如上面。

    要在没有MySQL支持的情况下编译sysbench,请使用--without-mysql。
    如果没有可用的数据库驱动程序,则与数据库相关的脚本将不起作用,但其他基准测试将起作用。

    #常规命令行选项

    下表列出了受支持的常用选项,它们的描述和默认值:

    选项
    描述
    默认值
    --threads
    要创建的工作线程总数
    1个
    --events
    要求总数的限制。0(默认值)表示没有限制
    0
    --time
    总执行时间限制(以秒为单位)。0表示没有限制
    10
    --warmup-time
    在启用统计信息的情况下运行实际基准测试之前,在禁用统计信息的情况下执行事件数秒钟。当您要从统计信息中排除基准测试运行的初始期间时,此功能很有用。在许多基准测试中,初始阶段并不具有代表性,因为CPU /数据库/页面和其他缓存需要一些时间进行预热
    0
    --rate
    平均交易率。该数字指定所有线程平均每秒应执行多少事件(事务)。0(默认)表示无限制速率,即事件以尽可能快的速度执行
    0
    --thread-init-timeout
    辅助线程初始化的等待时间(以秒为单位)
    30
    --thread-stack-size
    每个线程的堆栈大小
    32K
    --report-interval
    定期以指定的时间间隔(以秒为单位)报告中间统计信息。请注意,此选项生成的统计信息是按时间间隔而不是累积的。0禁用中间报告
    0
    --debug
    打印更多调试信息
    离开
    --validate
    尽可能验证测试结果
    离开
    --help
    根据常规语法或指定的测试打印帮助,然后退出
    离开
    --verbosity
    详细级别(0-仅关键消息,5-调试)
    4
    --percentile
    sysbench测量所有已处理请求的执行时间,以显示统计信息,例如最小,平均和最大执行时间。对于大多数基准测试,了解与某个百分位数相匹配的请求执行时间值也很有用(例如,95%百分位数意味着我们应该丢弃最长请求的5%,并从其余请求中选择最大值)。此选项允许指定要计算的查询执行时间的百分等级
    95
    --luajit-cmd
    执行LuaJIT控制命令。此选项等效于luajit -j。有关更多信息,请参见LuaJIT文档。

    请注意,可以通过附加相应的乘法后缀(K表示千字节,M表示兆字节,G表示千兆字节,T表示兆字节)
    来指定所有大小选项(--thread-stack-size如此表中所示)的数值。

    #sysbench使用[command]常用的有:

    1) prepare准备测试,生成数据
    2) run执行测试
    3) cleanup清理数据
    4) help
    5) version

    以上就是MySQL性能压力基准测试工具sysbench的使用简介的详细内容,更多关于MySQL sysbench的使用的资料请关注脚本之家其它相关文章!

    您可能感兴趣的文章:
    • mysql 5.7.20常用下载、安装和配置方法及简单操作技巧(解压版免安装)
    • win10下mysql 8.0.23 安装配置方法图文教程
    • sysbench对mysql压力测试的详细教程
    • MySQL压力测试方法 如何使用mysqlslap测试MySQL的压力?
    • mysql压力测试脚本实例
    • Mysqlslap MySQL压力测试工具 简单教程
    • MySQL系列之十五 MySQL常用配置和性能压力测试
    上一篇:Mysql MVCC机制原理详解
    下一篇:MySQL root密码的重置方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    MySQL性能压力基准测试工具sysbench的使用简介 MySQL,性能,压力,基准,测试工具,