当前位置: 首页 > 编程日记 > 正文

sysbench的安装和做性能测试

sysbench的安装和做性能测试

http://imysql.cn/node/312

sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。

关于这个项目的详细介绍请看:http://sysbench.sourceforge.net。

它主要包括以下几种方式的测试:

1、cpu性能

2、磁盘io性能

3、调度程序性能

4、内存分配及传输速度

5、POSIX线程性能

6、数据库性能(OLTP基准测试)

目前sysbench主要支持 MySQL,pgsql,oracle 这3种数据库。

一、安装 首先,在 http://sourceforge.net/projects/sysbench 下载源码包。

接下来,按照以下步骤安装:

tar zxf sysbench-0.4.8.tar.gz cd sysbench-0.4.8 ./configure && make && make install strip /usr/local/bin/sysbench

以上方法适用于 MySQL 安装在标准默认目录下的情况,如果 MySQL 并不是安装在标准目录下的话,那么就需要自己指定 MySQL 的路径了。

比如我的 MySQL 喜欢自己安装在 /usr/local/mysql 下,则按照以下方法编译:

/configure --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib && make && make install

当然了,用上面的参数编译的话,就要确保你的 MySQL lib目录下有对应的 so 文件,

如果没有,可以自己下载 devel 或者 share 包来安装。

另外,如果想要让 sysbench 支持 pgsql/oracle 的话,

就需要在编译的时候加上参数 --with-pgsql 或者 --with-oracle 这2个参数默认是关闭的,只有 MySQL 是默认支持的。

二、开始测试 编译成功之后,就要开始测试各种性能了,测试的方法官网网站上也提到一些,

但涉及到 OLTP 测试的部分却不够准确。在这里我大致提一下:

1、cpu性能测试

sysbench --test=cpu --cpu-max-prime=20000 run cpu测试主要是进行素数的加法运算,在上面的例子中,指定了最大的素数为 20000,

自己可以根据机器cpu的性能来适当调整数值。

2、线程测试

sysbench --test=threads --num-threads=64 --thread-yields=100 --thread-locks=2 run 3、磁盘IO性能测试

sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw prepare sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw run sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw cleanup

上述参数指定了最大创建16个线程,创建的文件总大小为3G,文件读写模式为随机读。

4、内存测试

sysbench --test=memory --memory-block-size=8k --memory-total-size=4G run

上述参数指定了本次测试整个过程是在内存中传输 4G 的数据量,每个 block 大小为 8K。

5、OLTP测试

sysbench --test=oltp --mysql-table-engine=myisam --oltp-table-size=1000000 \ --mysql-socket=/tmp/mysql.sock --mysql-user=test --mysql-host=localhost \ --mysql-password=test prepare

上述参数指定了本次测试的表存储引擎类型为 myisam,

这里需要注意的是,官方网站上的参数有一处有误,即 --mysql-table-engine,官方网站上写的是 --mysql-table-type,这个应该是没有及时更新导致的。

另外,指定了表最大记录数为 1000000,其他参数就很好理解了,主要是指定登录方式。

测试 OLTP 时,

可以自己先创建数据库 sbtest,或者自己用参数 --mysql-db 来指定其他数据库。

--mysql-table-engine 还可以指定为 innodb 等 MySQL 支持的表存储引擎类型。

好了,主要的就是这些了,想要了解更多信息就访问 sysbench 项目的主页吧

转载于:https://www.cnblogs.com/MYSQLZOUQI/p/3768993.html

相关文章:

React文档 state and lifecycle

状态和生命周期 这篇介绍 React 组件中状态和声明周期的概念。详情可以查看API参考 。 思考前一部分中时钟的例子。渲染元素中&#xff0c;我们仅学习了一种更新 UI 的方式。调用 ReactDOM.render() 改变渲染后的输出。 function tick() {const element (<div><h1>…

【讨论】基于WF的流程结构

大家都知道&#xff0c;在WF中默认情况下&#xff0c;其活动是以树状结构组成的&#xff0c;简单说就是复合活动包含其子活动&#xff0c;如果子活动也是复合活动也可以包含其子活动&#xff0c;但同一个活动不能成为两个活动的子活动。这种方式被大量使用在WF自带的活动库中&a…

(C++)设计一个程序能计算一个日期加上若干天后是什么日期and计算日期差值

输入第一行表示样例个数m&#xff0c;接下来m行每行四个整数分别表示年月日和累加的天数。 输出m行&#xff0c;每行按yyyy-mm-dd的个数输出。 #include<cstdio>//判断是否是闰年 bool isLeap(int year){return (year%40&&year%100!0)||year%4000; }//用二维数…

【转载】解决Apache2+PHP上传文件大小限制的问题

原文出处&#xff1a;http://evol1216.blog.163.com/blog/static/13019958020106783623528/ 在用PHP进行文件上传的操作中&#xff0c;需要知道怎么控制上传文件大小的设置&#xff0c;而文件可传大小是受到多种因素制约的&#xff0c;现总结如下&#xff1a; 1、php.ini:uploa…

第36章 网络管理

第36章 网络管理 监听 11g的话首先写配置文件vi /u01/grid/11g/network/admin/listener.ora打开后选取下面的两个部分修改就好了 模板所在地vi /u01/11g/network/admin/samples/listener.ora SID_LIST_LISTENER (SID_LIST (SID_DESC (GLOBAL_DNAMEwyzc11g) (SID_NAMEwyzc11g)…

(C++)CSP202006-2 稀疏向量 two pointers

#include<cstdio>const int M 500000;//a,b<5*10^5 int u[M1][2];//第一维是index,第二维是value int v[M1][2];int main(){//1.读入n,a,b//2.对数组进行遍历&#xff0c;如果第一位相等&#xff0c;将第二维相乘 int n,a,b,i;long long ans0;scanf("%d%d%d&qu…

基于【CentOS-7+ Ambari 2.7.0 + HDP 3.0】搭建HAWQ数据仓库01 —— 准备环境,搭建本地仓库,安装ambari...

一、集群软硬件环境准备&#xff1a; 操作系统&#xff1a; centos 7 x86_64.1804 Ambari版本&#xff1a;2.7.0 HDP版本&#xff1a;3.0.0 HAWQ版本&#xff1a;2.3.05台PC作为工作站&#xff1a; ep-bd01ep-bd02ep-bd03ep-bd04ep-bd05其中ep-bd01作为主节点&#xff0c;用于…

PDF编辑工具——PDF Desktop Converter 4 Professional

管理和操作PDF的工具。PDF Desktop Converter 4 Professional可以生成&#xff0c;转换&#xff0c;提取&#xff0c;组合&#xff0c;分割合并PDF。新增加的OCR功能可以将扫描后的文件转变成可以检索和编辑的PDF。以上这些功能只需要一个软件就可以全部实现。软件特点1. 快速&…

史上世界上最惨烈的几次股灾!

史上世界上最惨烈的几次股灾&#xff01;●最惨烈的几次股灾 1美国股灾 1.1 1929年大股灾 1929年10月24日&#xff0c;星 期四。灾难的发生是毫无征兆的&#xff0c;开盘时&#xff0c;并没有出现什么值得注意的迹象&#xff0c;而且有一段时间股指还非常坚挺&#xff0c;但交易…

(C++) CSP 201803-1 跳一跳

#include<cstdio> const int M 30; int a[M1][2];//第一维用于读入&#xff0c;第二维用于记录上一局得分 int main(){int temp,index0,ans0;scanf("%d",&temp);while(temp!0){a[index][0]temp;if(a[index][0]1){ans1;}else{if(a[index-1][0]2){a[index][…

C#对象数组排序方法

一个排序的类&#xff0c;用了几种方式实现的。 usingSystem; namespaceDataStruct { publicclassSorter { ///<summary>///冒泡排序法1 ///</summary>/*&#xff08;1&#xff09;对于数组list中的1至n个数据&#xff0c;先将第1个和第2个数据进行比…

Asp.net MVC 3 防止 Cross-Site Request Forgery (CSRF)原理及扩展 安全 注入

原理&#xff1a;http://blog.csdn.net/cpytiger/article/details/8781457 原文地址&#xff1a;http://www.cnblogs.com/wintersun/archive/2011/12/09/2282675.html Cross-Site Request Forgery (CSRF) 是我们Web站点中常见的安全隐患。 下面我们在Asp.net MVC3 来演示一下。…

Windows下安装Redis服务

2019独角兽企业重金招聘Python工程师标准>>> Redis是有名的NoSql数据库&#xff0c;一般Linux都会默认支持。但在Windows环境中&#xff0c;可能需要手动安装设置才能有效使用。这里就简单介绍一下Windows下Redis服务的安装方法&#xff0c;希望能够帮到你。 1、要安…

(C++)1022 D进制的A+B 除基取余法将10进制数换成给定进制数

#include<cstdio> //除基取余法 const int M 30;int main(){long long a,b,c;int D,ans[M2];scanf("%lld%lld%d",&a,&b,&D);cab;int num0;do{ans[num]c%D;c c/D;}while(c!0);for(int inum-1;i>0;i--){printf("%d",ans[i]);}return…

Linux zip-tar.gz 压缩解压

tar -zcvf /home/xahot.tar.gz /xahot tar -zcvf 打包后生成的文件名全路径 要打包的目录 例子&#xff1a;把/xahot文件夹打包后生成一个/home/xahot.tar.gz的文件。zip 压缩方法&#xff1a; 压缩当前的文件夹 zip -r ./xahot.zip ./* -r表示递归zip [参数] [打包后的文件名]…

Spring(ApplicationContextBeanFactory)

BeanFactory 才是 Spring 容器中的顶层接口。ApplicationContext 是它的子接口。 BeanFactory 和 ApplicationContext 的区别&#xff1a;创建对象的时间点不一样。 BeanFactory接口 spring的原始接口,针对原始接口的实现类功能较为单一.BeanFactory接口实现类的容器,特点是每次…

spoolsv.exe占CPU100% 的解决方法

spoolsv.exe占CPU100% 的解决方法spoolsv.exe是打印缓冲&#xff0c;没有打印机就关掉&#xff0c;有的话在打印时会占用很大内存。因为要打印的文件要转化格式。禁止Print spooler服务&#xff0c;如果用打印机&#xff0c;此方法不可行。  解决办法如下&#xff1a;1、在服…

(C++)1037 在霍格沃茨找零钱的两种解法

解法一 #include<cstdio> //十七个银西可(Sickle)兑一个加隆(Galleon)&#xff0c;二十九个纳特(Knut)兑一个西可 //1 G 17 S , 1 S 29 Kint main(){int g1,s1,k1,g2,s2,k2,g3,s3,k3;scanf("%d.%d.%d",&g2,&s2,&k2);//定价 scanf("%d.%d.%…

开发人员角色分析

开发人员角色分析&#xff1a; 开发人员Developers 主要包含以下角色&#xff1a; n 软件架构师Software Architect n 设计员Designer n 用户界面设计员User-Interface Designer n 数据库设计员 Database Designer n 实施员Implementer n …

php empty()和isset()的区别

在使用 php 编写页面程序时&#xff0c;我经常使用变量处理函数判断 php 页面尾部参数的某个变量值是否为空&#xff0c;开始的时候我习惯了使用 empty() 函数&#xff0c;却发现了一些问题&#xff0c;因此改用 isset() 函数&#xff0c;问题不再。 顾名思义&#xff0c;empty…

jmap 内存情况

2019独角兽企业重金招聘Python工程师标准>>> -dump dump堆到文件,format指定输出格式&#xff0c;live指明是活着的对象,file指定文件名 [rootlocalhost ~]# jmap -dump:live,formatb,filedump.hprof 187784 Dumping heap to /home/yxgly/dump.hprof ... Heap dump …

(C++)1021 个位数统计

#include<cstdio> #include<cstring>const int M 1000;int main(){char str[M1];int count[10]{0};//全部初始化为0 scanf("%s",str);int len strlen(str);int i;for(i0;i<len;i){count[str[i]-0];}for(i0;i<10;i){if(count[i]>0){printf(&qu…

TOJ--3456--数学题

这题 做出来真的好爽啊... it is cool although it is easy 虽然 已经是大概1 2点的事了 我拖到现在才写是因为------lol 终于赢一把了 --- 先贴下题目&#xff1a; touch me 嗯 我一开始 用的是 3重for 我以为32767的数据量 是很小的.... 结果 TLE。。 OK 那么 我们只能换…

firewalled centos7

zone绑定网卡 firewall-cmd --zoneinternal --add-interfaceens192 --permanent firewall-cmd --permanent --zoneinternal --add-rich-rule"rule family"ipv4" source address"192.168.10.0/24" accept" [rootbyos000 system]# firewall-cmd -…

为Delphi程序添加事件和事件处理器

在Delphi中&#xff0c;事件实际上是专门化的属性&#xff0c;它是一个过程&#xff08;procedure&#xff09;的指针。要添加事件&#xff0c;首先应在所定义的类中说明一个用来指向事件过 程的指针&#xff0c;该指针的作用是当事件一旦发生&#xff0c;就通过这个指针执行所…

(C++)1031 查验身份证 3难点+3注意点

#include<cstdio> #include<cstring> //难点1&#xff1a;检查前17位是否全为数字 //解决之道1&#xff1a;本来就不是整型数字&#xff0c;是字符数字&#xff0c;判断是否在0和9之间即可 //难点2&#xff1a;遇到一个X后&#xff0c;如果不想处理sum了该怎么办 /…

Perl时间处理函数

官方网址&#xff1a;http://search.cpan.org/~stbey/Date-Calc-6.3/lib/Date/Calc.pod#___top use Date::Calc qw(Days_in_YearDays_in_MonthWeeks_in_Yearleap_yearcheck_datecheck_timecheck_business_dateDay_of_YearDate_to_DaysDay_of_WeekWeek_NumberWeek_of_YearMonda…

Linux环境搭建 | 手把手教你安装Linux虚拟机

2019独角兽企业重金招聘Python工程师标准>>> 前言 作为一名Linux工程师&#xff0c;不管是运维、应用、驱动方向&#xff0c;在工作中肯定会需要Linux环境。想要获得Linux环境&#xff0c;一个办法就是将电脑系统直接换成Linux系统&#xff0c;但我们平常用惯了Wind…

企业的覆灭,我监视你的Exchange邮件!

现在很多企业都搭建ExchangeServer平台&#xff0c;一个用户包括Domain admins都是不允许查阅其他用户的邮件信息的&#xff01;殊不知作为Domain Admins权限用户可以经过精心的设置&#xff0c;可以达到浏览到其他用户邮件信息&#xff01; 转载于:https://www.cnblogs.com/al…

(C++)1002 写出这个数

#include<cstdio> #include<cstring>const int M 100; //用字符数组装输入 //定义变量&#xff0c;输出字符数组的长度 //对字符数组遍历求和 //对结果逐位输出汉语拼音 void hanzi(int i){switch(i){case 0:printf("ling");break;case 1:printf("…