Sysbench 1.0.17安装与测试

Sysbench安装与测试

1.安装:

cd /usr/local/src
wget https://codeload.github.com/akopytov/sysbench/tar.gz/1.0.17

tar -xzvf /usr/local/src/sysbench-1.0.17.tar.gz -C /usr/local/

cd /usr/local/sysbench-1.0.17

##RHEL/CentOS
yum -y install make automake libtool pkgconfig libaio-devel
# For MySQL support, replace with mysql-devel on RHEL/CentOS 5
yum -y install mariadb-devel openssl-devel
# For PostgreSQL support
yum -y install postgresql-devel

##Build and Install
./autogen.sh
# Add --with-pgsql to build with PostgreSQL support
./configure
make -j
make install

sysbench --version

  

2.测试:

准备数据:

sysbench /usr/local/share/sysbench/tests/include/oltp_legacy/oltp.lua --mysql-host=10.10.48.240 --mysql-port=3307 --mysql-user=root --mysql-password=rooT_258 --mysql-db=dbtest --oltp-tables-count=10 --oltp-table-size=10000000 --oltp-dist-type=uniform --oltp-read-only=off --oltp-test-mode=complex --rand-init=on --db-driver=mysql --report-interval=10 --threads=1000 --time=120 prepare

执行测试:

sysbench /usr/local/share/sysbench/tests/include/oltp_legacy/oltp.lua --mysql-host=10.10.48.240 --mysql-port=3307 --mysql-user=root --mysql-password=rooT_258 --mysql-db=dbtest --oltp-tables-count=10 --oltp-table-size=10000000 --oltp-dist-type=uniform --oltp-read-only=off --oltp-test-mode=complex --rand-init=on --db-driver=mysql --report-interval=10 --threads=1000 --time=120 run >> /home/mysysbench.log

  

清理数据:

sysbench /usr/local/share/sysbench/tests/include/oltp_legacy/oltp.lua --mysql-host=10.10.48.240 --mysql-port=3307 --mysql-user=root --mysql-password=rooT_258 --mysql-db=dbtest --oltp-tables-count=10 cleanup

重要说明:

需要说明的选项:

mysql-db=dbtest:测试使用的目标数据库,这个库名要事先创建
--oltp-tables-count=10:产生表的数量
--oltp-table-size=10000000:每个表产生的记录行数
--oltp-dist-type=uniform:指定随机取样类型,可选值有 uniform(均匀分布), Gaussian(高斯分布), special(空间分布)。默认是special
--oltp-read-only=off:表示不止产生只读SQL,也就是使用oltp.lua时会采用读写混合模式。默认 off,如果设置为on,则不会产生update,delete,insert的sql。
--oltp-test-mode=nontrx:执行模式,这里是非事务式的。可选值有simple,complex,nontrx。默认是complex     simple:简单查询,SELECT c FROM sbtest WHERE id=N     complex (advanced transactional):事务模式在开始和结束事务之前加上begin和commit, 一个事务里可以有多个语句,如点查询、范围查询、排序查询、更新、删除、插入等,并且为了不破坏测试表的数据,该模式下一条记录删除后会在同一个事务里添加一条相同的记录。
    nontrx (non-transactional):与simple相似,但是可以进行update/insert等操作,所以如果做连续的对比压测,你可能需要重新cleanup,prepare。
--oltp-skip-trx=[on|off]:省略begin/commit语句。默认是off
--rand-init=on:是否随机初始化数据,如果不随机化那么初始好的数据每行内容除了主键不同外其他完全相同
--num-threads=12: 并发线程数,可以理解为模拟的客户端并发连接数
--report-interval=10:表示每10s输出一次测试进度报告
--max-requests=0:压力测试产生请求的总数,如果以下面的max-time来记,这个值设为0
--max-time=120:压力测试的持续时间,这里是2分钟。
注意,针对不同的选项取值就会有不同的子选项。比如oltp-dist-type=special,就有比如oltp-dist-pct=1、oltp-dist-res=50两个子选项,代表有50%的查询落在1%的行(即热点数据)上,另外50%均匀的(sample uniformly)落在另外99%的记录行上。
再比如oltp-test-mode=nontrx时, 就可以有oltp-nontrx-mode,可选值有select(默认), update_key, update_nokey, insert, delete,代表非事务式模式下使用的测试sql类型。
以上代表的是一个只读的例子,可以把num-threads依次递增(16,36,72,128,256,512),或者调整my.cnf参数,比较效果。另外需要注意的是,大部分mysql中间件对事务的处理,默认都是把sql发到主库执行,所以只读测试需要加上oltp-skip-trx=on来跳过测试中的显式事务。

  

 

###############################################################################
查询表的数据量

SELECT CONCAT(table_schema,‘.‘,table_name) AS ‘Table Name‘, table_rows AS ‘Number of Rows‘, CONCAT(ROUND(data_length/(1024*1024*1024),4),‘G‘) AS ‘Data Size‘, CONCAT(ROUND(index_length/(1024*1024*1024),4),‘G‘) AS ‘Index Size‘, CONCAT(ROUND((data_length+index_length)/(1024*1024*1024),4),‘G‘) AS‘Total‘FROM information_schema.TABLES WHERE table_schema LIKE ‘dbtest‘;

参考来源:

https://www.cnblogs.com/conanwang/p/5910079.html

原文地址:https://www.cnblogs.com/EikiXu/p/10579832.html

时间: 2024-10-10 10:02:18

Sysbench 1.0.17安装与测试的相关文章

Qt5.3.0的安装与测试

Qt5.3.0的安装与测试(交叉编译,用于arm,支持tslib触摸屏) 本次移植可以使用触摸屏. 首先下载源码包: http://download.qt.io/official_releases/qt/ 由于我之前pc机安装的是5.3.0,因此这里也下载linux的5.3.0 我选择的是: qt-everywhere-opensource-src-5.3.0.tar.xz 下载地址(http://download.qt.io/official_releases/qt/5.3/5.3.0/sin

macOS 下的 MySQL 8.0.17 安装与简易配置

如果我写的这篇你看不懂,可能网上也没有你能看懂的教程了 虽然这篇针对的是8.0.x版本,但是关于MySQL配置之类的方法还是通用的 环境信息与适用范围 环境信息 环境/软件 版本 macOS macOS Mojave MySQL MySQL 8.0.17 适用范围 环境/软件 版本 macOS macOS大概都行吧 MySQL 8.0.x 第零步,清除之前的MySQL ( 除非你想装多个版本 ) 打开终端,输入以下??代码,并执行 sudo rm /usr/local/mysql sudo rm

[ActionSprit 3.0] FMS安装与测试

1.运行Flash Media Server4.5.exe,安装选项可全默认,序列号可不填:输入用户名和密码需记住,登录时要用. 2.安装完成,在安装目录C:\Program Files\Adobe\Flash Media Server 4.5\tools\下找到fms_adminConsole.htm或者fms_adminConsole.swf,这是管理文件,打开其中之一填入相应信息登录,Server Address 填本机ip,如192.168.3.106,Username和Password

【hadoop】hadoop3.2.0的安装并测试

前言:前段时间将hadoop01的虚拟机弄的崩溃掉了,也没有备份,重新从hadoop02虚拟上克隆过来的,结果hadoop-eclipse插件一样的编译,居然用不起了,找了3天的原因,最后还是没有解决,只能用hadoop shell 命令去测试了,反正影响不大,只不过用着不方便而已. 心累中........... 正文: 解压安装Hadoop [[email protected] ~]$ cp /home/hadoop/Resources/hadoop-3.2.0.tar.gz ~/ [[ema

mysql 8.0.17 安装配置方法图文教程

1.URL:https://www.jb51.net/article/167782.htm 2.装好之后需要使用add user中的用户名和密码登录(之前安装数据库时出现的) 使用navicat连接时需要使用上图的用户名和密码 ======================================================================================================================关于Navicat连接不上MySQL

Hadoop0.21.0部署安装以及mapreduce测试

鉴于hadoop的需要...但是并不限于此...有时候闲输入密码麻烦,也可以用这种办法从一个节点通过ssh进入另一个节点... 设要使master进入slave是免密码的,则可以在master(ip为192.168.169.9)中如下操作: 命令:ssh-keygen -t rsa  然后一路回车(该命令不需要进入特定目录) cd进入/root/.ssh/可以看见如下(橙色是新生成的) id_rsa  id_rsa.pub  known_hosts 然后用scp命令将id_rsa远程传输到sla

安装mysql 8.0.17并配置远程访问

一.安装前准备 查看数据库版本命令: mysql --version mysql-community-common-8.0.17-1.el7.x86_64.rpm mysql-community-libs-8.0.17-1.el7.x86_64.rpm mysql-community-client-8.0.17-1.el7.x86_64.rpm mysql-community-server-8.0.17-1.el7.x86_64.rpm 二.安装RPM包 依次安装上述RPM包,前后安装包为依赖关

安装和测试xtrabackup8.0

安装和测试xtrabackup8.0Xtrabackup 2.4.已经不支持MySQL 8.0的备份恢复,使用会报如下错误!Error: MySQL 8.0 and Percona Server 8.0 are not supported by Percona Xtrabackup 2.4.x series. Please use Percona Xtrabackup 8.0.x for backups and restores.mysql8.0[[email protected] ~]# cl

Hadoop2.2.0多节点分布式安装及测试

众所周知,hadoop在10月底release了最新版2.2.很多国内的技术同仁都马上在网络上推出了自己对新版hadoop的配置心得.这其中主要分为两类: 1.单节点配置 这个太简单了,简单到只要懂点英语,照着网上说的做就ok了.我这里不谈这个,有兴趣的童鞋可以自己去问度娘和谷哥- 2.多节点配置 这个就是我要重点说明的,老实说网络上说的的确是多节点,但不是真正的分布式部署- 我们为什么要用hadoop?因为hadoop是一个分布式系统基础架构,我们可以在不了解分布式底层细节的情况下,开发分布式