sql-bench mysql_MySQL性能测试(一)——RHEL 7.1, MySQL 5.6.25, sql-bench

由于前段时间要测试全闪存阵列上运行MySQL的性能,因此研究了段时间,试验了两个工具:一个是MySQL自带的sql-bench,一个是sysbench。

本过程使用的环境是Redhat Enterprise Linux 7.1, MySQL 5.6.25,测试工具则是mysql自带的sql-bench工具。由于使用MySQL RPM包中不包含sql-bench目录,因此我选用了使用MySQL源代码安装。

由于MySQL 5.6之后是使用cmake编译,因此也需要安装cmake。

1. 安装RedHat 7.1 Server,安装过程省略。安装过程中选择Server with GUI,将能选择的Add-Ons都选择上

54d09d6c191bfc388a9cd5001d06dc75.png

2. 安装完成后以root登录,在root目录下创建MySQL目录,用于拷贝安装介质。使用WinSCP将mysql-5.6.25.tar.gz, cmake-2.8.4.tar.gz,安装源文件拷贝到MySQL目录下。

由于mysql需要依赖perl包,所以从安装盘上要将perl-DBD, perl-DBI也拷贝到目录下。而安装perl-包时,需要依赖libmysqlclient.so.18,包含在MySQL的RPM安装包里,所以我将MySQL的RPM安装包也拷贝了下来。

另外,还有一个mysql依赖的ncurse包。

8d4cb04756b6bf0c7d5332324b581ce2.png

3. 首先安装cmake:解压tar –zxvf cmake-2.8.4.tar.gz,使用make安装

[[email protected] cmake-2.8.4]# tar -zxvf cmake-2.8.4.tar.gz

[[email protected] cmake-2.8.4]# cd cmake-2.8.4/

[[email protected] cmake-2.8.4]# ./configure

[[email protected] cmake-2.8.4]# make

[[email protected] cmake-2.8.4]# make install

e9fb7fd0d2ab4e0ebb5703895abf14d0.png2a3126a7c66a043195238a5eb4e82ed8.png

4. 卸载自带数据库mariadb:

cadd2a417c473839fcd09e2a04386176.pngab4ba806d0033332d06ffa3136507d97.png

5. 解压MySQL安装包,安装shared-compat和shared兼容性包,再安装perl-DBD和perl-DBI包:

4fd733b5d4b1564f95e361d8eb2d5f18.png89938d4bfd520f6e3c7e14e19d749d2e.png4ffabaf3a9a5fbb1da8ae8bf2f081382.png

6. 安装ncurses包:

[[email protected] ncurses-5.9]# ./configure

[[email protected] ncurses-5.9]# make

[[email protected] ncurses-5.9]# make install

f2a576e81640acb01073c2183e9f8bd4.pngbea295a1aa91efc4bc9d93051a3a5a8f.png

7. 然后开始安装MySQL,解压mysql:

cf411bae73e997c26747f8fdbd32ab95.png

8. 创建mysql的安装目录及数据库存放目录

[[email protected] mysql-5.6.25]# mkdir -p /usr/local/mysql                                        //安装mysql

[[email protected] mysql-5.6.25]# mkdir -p /usr/local/mysql/data                            //存放数据库目录,如果想测试存储的性能,可将此LUN挂载到此目录

9. 创建mysql用户及用户组(在此系统里已存在)

6670bea187e090d8d6623c13930d4922.png

10. 开始编译mysql源文件,使用cmake编译:

[[email protected] mysql-5.6.25]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1

[[email protected] mysql-5.6.25]# make

[[email protected] mysql-5.6.25]# make install

参数说明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql        //安装目录

-DINSTALL_DATADIR=/usr/local/mysql/data         //数据库存放目录

-DDEFAULT_CHARSET=utf8                    //使用utf8字符

-DDEFAULT_COLLATION=utf8_general_ci            //校验字符

-DEXTRA_CHARSETS=all                        //安装所有扩展字符集

-DENABLED_LOCAL_INFILE=1                      //允许从本地导入数据

3115c5e8c14dcd889c57de98d80ddac7.pngec4bccaf9cad995221db69c82d514b16.pngc86e09ce143ccb4c49f26a10257fd6e4.png

删除编译的临时文件:

[[email protected] mysql-5.6.25]# make clean

[[email protected] mysql-5.6.25]# rm -f CMakeCache.txt

11. 配置:

(1) 设置目录权限

[[email protected] mysql-5.6.25]# cd /usr/local/mysql/

[[email protected] mysql]# chown -R root:mysql .                              //把当前目录中所有文件的所有者所有者设为root,所属组为mysql

[[email protected] mysql]# chown -R mysql:mysql data

(2) 创建系统数据库的表

[[email protected] mysql]# scripts/mysql_install_db --user=mysql

fe885fd589323cd35a12882aa317ea2a.png

(3) 设置环境变量,编辑

[[email protected] mysql]# vi /root/.bash_profile

//将mysql路径添加至PATH中

[[email protected] mysql]# source /root/.bash_profile

637bac25ab7f9643f5a5ea60ceb4457a.png

(4) 将mysql添加到系统服务中去

07435a8d51c200e08d2589fdfb450d7e.png

(5) 启动mysql成功

9e6015ed47f29b392233ffe4d65099d1.png

(6) 给mysql的root用户设置密码

fc482af4a500335a241402fa7d35e628.png

(7). 运行sql-bench还差一步,因为脚本是从另外一个地方寻找sock,因此需要建立一个连接:

[[email protected] sql-bench]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

5da54b281d90e2df66099d2d7afeb705.png

12. 运行测试脚本

[[email protected] sql-bench]# ./run-all-tests --user=root --password=password

可在output目录查看输出结果

ab050a7bb2c646ef04f596dcae132d97.pngabf4bbc4640578f9a9e1e934957f5f72.png

原文:http://dafanfan.blog.51cto.com/683575/1686652

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/412146.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java面试技术问题_11个JAVA面试中常见技术问题

原标题:11个JAVA面试中常见技术问题大家在平常面试java的过程中都会遇到哪些难题呢?还有一些即将去面试java的童鞋们,你们想知道技术面试中会涉及到哪些点吗?达妹为你整理Java面试中会被问到的几个技术难题。1、一个".java&q…

Java list接口

list中的元素可以重复,父接口是collection,实现类是:arraylist和vector。 arraylist: package com.jike.list;import java.util.ArrayList; import java.util.List;public class ListDemo01 {public static void main(String[] ar…

苏州游记

已经很久没有更新这里了,懒哦!上周末一干人等去了苏州的三山岛,很是开心,春天来了,到处都是那么的生机盎然!三山岛是太湖上若干岛屿之一,离苏州城很远,我们乘了50分钟的火车后&#…

markdown 转义字符

\\ 反斜杠   \ 反引号   \* 星号   \_ 下划线   \{\} 大括号   \[\] 中括号   \(\) 小括号   \# 井号   \ 加号   \- 减号   \. 英文句号   \! 感叹号 转载于:https://www.cnblogs.com/willingtolove/p/10456027.html

cadence 旋转快捷键_cadence原理图快捷键

原标题:cadence原理图快捷键Allegro Design Entry CIS 原理图1.shift鼠标滚轮 左右移动2.Ctrl鼠标滚轮 放大缩小3.Alt鼠标滚轮 上下移动4.按下鼠标滚轮可任意方向拖动图纸(可以一直保持按下状态或者按一下松开)5.CTRL鼠标左键 : 元件叠选6.CTRL鼠标左键拖…

Lab 11-1

Analyze the malware found in Lab11-01.exe. Questions and Short Answers What does the malware drop to disk? A: The malware extracts and drops the file msgina32.dll onto disk from a resource section named TGAD.How does the malware achieve persistence? A: T…

head first java原文_Head First Java

条件语句&和|可以用作条件语句,但是是长连接,左右两边的表达式必须都执行完!这和&&和||不同,&&和||是短连接,只要左边的表达式已经能够计算出整个表达式的结果,右边的表达式就不会执行…

C#操作XML

已知有一个XML文件&#xff08;bookstore.xml&#xff09;如下&#xff1a; <?xml version"1.0"encoding"gb2312"?><bookstore><book genre"fantasy"ISBN"2-3631-4"><title>Oberons Legacy</title> &…

20175204 张湲祯 2018-2019-2《Java程序设计》 第一周学习总结

20175204 张湲祯 2018-2019-2《Java程序设计》第一周学习总结 教材学习内容总结 -第一章Java入门要点&#xff1a; -Java的地位&#xff1a;具有面向对象&#xff0c;与平台无关&#xff0c;安全稳定和多线程等优良特性&#xff0c;是软件设计中优秀的编程语言。 -Java的特点&a…

使用线程,防止当前程序被阻塞

在编写Windows Form程序时有时需要编写一个处理大事件的函数&#xff0c;这导致了程序的运行时间变得很长&#xff0c;这时问题就出现了&#xff0c;当程序没有处理完毕之前当前窗体被锁死了&#xff0c;而且用户如果此时点击窗体的其他部分&#xff0c;便会出现没有响应的标识…

探索未知种族之osg类生物---呼吸分解之更新循环一

上节总结 前几天我们大体上介绍完成了osg的事件循环的介绍&#xff0c;总结一下osg的时间循环主要就是得到平台(windows)的所有消息&#xff0c;并遍历所有的node的eventCallback&#xff0c;并对他们进行处理。接下来我们就要进入osg的另一个维持生命的循环---更新循环。 更新…

java变换变量赋值_Java变量的类型转换

在程序中&#xff0c;当把一种数据类型的值赋给另一种数据类型的变量时&#xff0c;需要进行数据类型转换。根据转换方式的不同&#xff0c;数据类型转换可分为两种:自动类型转换和强制类型转换。自动类型转换自动类型转换也叫隐式类型转换&#xff0c;指的是两种数据类型在转换…

如何进行.NET高效开发

sugar 2006-03-12 13:53 转载于:https://www.cnblogs.com/SCOTT-SUN/archive/2006/06/02/416077.html

洛谷 P3244 / loj 2115 [HNOI2015] 落忆枫音 题解【拓扑排序】【组合】【逆元】

组合计数的一道好题。什么非主流题目 题目背景 &#xff08;背景冗长请到题目页面查看&#xff09; 题目描述 不妨假设枫叶上有 \(n​\) 个穴位&#xff0c;穴位的编号为 \(1\sim n​\)。有若干条有向的脉络连接着这些穴位。穴位和脉络组成一个有向无环图——称之为脉络图&…

配置msf连接postgresql数据库

BackTrack 5 R3版本的Metasploit在每次的升级后总会出现奇奇怪怪的错误&#xff0c;主要是Ruby的库出错&#xff0c;网上找了一些解决的办法&#xff0c;但每次更新后又会出错&#xff0c;蛋碎。 解决方法&#xff1a; BackTrack 5中默认自动开启端口7337。 1、查看PostgreSQL端…

web文件加密

讲解以及源代码下载ASP.NET 2.0: Encrypting Connection Strings http://blogs.vertigosoftware.com/snyholm/archive/2005/12/16/1746.aspx http://msdn2.microsoft.com/en-us/library/yxw286t2.aspx中文http://msdn2.microsoft.com/zh-cn/library/yxw286t2.aspx ASP.NET 2.0:…

java开发和android开发_浅谈Java开发和Android开发的不同

Java是具有多种用例的完整开发语言&#xff0c;包括Web开发&#xff0c;PC程序开发&#xff0c;嵌入式开发等。Android开发是面向手机应用&#xff0c;使用Java较多&#xff0c;还有常用的H5跨平台混合架构模式。一&#xff0c;UI界面开发不同1)Java Swing现在Java开发基本上都…

远程上传下载文件-Xftp5

Xftp5下载 链接&#xff1a;https://pan.baidu.com/s/1Wzso_Q7mPy5uGOUlripEWg 密码&#xff1a;xfx9 安装选择家庭版 由于21端口没有开&#xff0c;所以不能选FTP, 选择SFTP&#xff0c;22端口 用哪个用户登录机会自动到该用户的家目录 连接上出先乱码问题 属性 OK. 转载于:h…

java反射 pdf_java反射学习笔记整理.pdf

java反射学习笔记整理.pdf还剩15页未读&#xff0c;继续阅读下载文档到电脑&#xff0c;马上远离加班熬夜&#xff01;亲&#xff0c;很抱歉&#xff0c;此页已超出免费预览范围啦&#xff01;如果喜欢就下载吧&#xff0c;价低环保&#xff01;内容要点&#xff1a;Java 反射笔…

变态跳台阶

题目描述 一只青蛙一次可以跳上1级台阶&#xff0c;也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。题解 简要提炼思路&#xff1a; 1、有n个台阶&#xff0c;则每次可以跳1&#xff0c;2&#xff0c;3&#xff0c;&#xff0c;&#xff0c;n个…