由于前段时间要测试全闪存阵列上运行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都选择上

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包。

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

4. 卸载自带数据库mariadb:

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

6. 安装ncurses包:

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

[[email protected] ncurses-5.9]# make

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

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

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用户及用户组(在此系统里已存在)

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                      //允许从本地导入数据

删除编译的临时文件:

[[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

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

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

//将mysql路径添加至PATH中

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

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

(5) 启动mysql成功

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

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

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

12. 运行测试脚本

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

可在output目录查看输出结果

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

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

  1. MySQL 数据库 之 高级 SQL 语句(常用查询,正则表达式,运算符,库函数,存储过程)

    文章目录 前言 一 . 常用查询介绍 1.按关键字排序 1.1默认升序 1.2 降序 1.3 多字段的排序 2. 对结果进行分组 2.1 分组统计 3.限制结果条目 3.1 查看前4行 3.2 查看第 ...

  2. SQL Server 2008 性能测试和调优

    为应用程序设计数据库,你要考虑你的所作所为将会对数据库的性能有什么影响先:运行数据库后,客户不断的抱怨'应用程序(数据库)跑的慢',你又要优化数据库和应用程序的性能.这就需要数据库性能测试和调优方面的 ...

  3. 【Azure Data Platform】Dedicated SQL Pool——导入性能测试(2)——CTAS

    本文属于[Azure Data Platform]系列. 接上文:[Azure Data Platform]Dedicated SQL Pool--导入性能测试(1)--传统insert 本文介绍SQ ...

  4. 【Azure Data Platform】Dedicated SQL Pool——导入性能测试(3)——Copy

    本文属于[Azure Data Platform]系列. 接上文:[Azure Data Platform]Dedicated SQL Pool--导入性能测试(2)--CTAS 本文介绍SQL DW ...

  5. 数据库封装 sql server mysql_mysql数据库封装

    /** * name: sql操作封装,可扩展 . * User: 张云山 * Date: 2016/9/4 * Time: 22:02 */ //php文件编码设置 header('Content- ...

  6. 如何测试sql服务器的性能测试,SQL执行效率和性能测试方法

    对于做管理系统和分析系统的程序员,复杂SQL语句是不可避免的,面对海量数据,有时候经过优化的某一条语句,可以提高执行效率和整体运行性能.如何选择SQL语句,本文提供了两种方法,分别对多条SQL进行量化 ...

  7. loadrunner mysql性能测试_运用Loadrunner测试Mysql数据库性能 TRON•极客

    1.前言 针对数据库的性能测试,loadrunner本身支持sql server和oracle数据库,这两种数据库可以用loadrunner直接录制进行测试.而我们项目中使用的是mysql数据库,针对 ...

  8. 面试官:听说你sql写的挺溜的,你说一说查询sql的执行过程

    来自:非科班的科班 当希望Mysql能够高效的执行的时候,最好的办法就是清楚的了解Mysql是如何执行查询的,只有更加全面的了解SQL执行的每一个过程,才能更好的进行SQl的优化. 当执行一条查询的S ...

  9. R语言构建仿真数据库(sqlite)并使用dplyr语法和SQL语法查询数据库、将dplyr语法查询语句翻译为SQL查询语句

    R语言构建仿真数据库(sqlite)并使用dplyr语法和SQL语法查询数据库.将dplyr语法查询语句翻译为SQL查询语句 目录

最新文章

  1. Linux centos7 Linux网络相关、firewalld和netfilter、netfilter5表5链介绍、iptables语法
  2. SQL Server 2008企业试用版到期,升级为企业版
  3. ECShop替换FCKeditor编辑器为KindEditor
  4. 算法提高课-搜索-DFS之连通性模型-AcWing 1113. 红与黑:dfs和bfs两种做法
  5. 视角不平衡立体匹配研究
  6. 微型计算机作为载体的部件是,大工11秋《计算机应用基础》辅导资料二
  7. MySQL(16)--- DELETE 语句
  8. Hello, cnblog!
  9. Spring AOP 性能监控器
  10. Python新闻网站项目-3.Gerapy爬虫分布式部署
  11. fanuc系统屏蔽服务器,FANUC伺服轴的屏蔽方法
  12. 苹果4s怎么越狱_越狱源和插件大全2020.4.4
  13. Mysql根据出生日期计算年龄
  14. 数据文件offline online
  15. 如何配置 SSH 免密码登录
  16. linux uvc 拍照程序,Linux UVC driver
  17. 【设计】01-15个漂亮的网站UI设计作品案例欣赏
  18. 29、RFM客户价值分析(有图有案例)
  19. ntoskrnl.exe损坏或丢失的解决方案
  20. 一道输出超限nnnn次的题

热门文章

  1. react学习(28)---react中componentWillReceiveProps
  2. PS教程第十三课:是时候开始战斗了
  3. 13攻击行为是天生的
  4. [vue] 移动端ui你用的是哪个ui库?有遇到过什么问题吗?
  5. [vue] watch和计算属性有什么区别?
  6. [vue] 说说你对vue的错误处理的了解?
  7. [css] inline、block、inline-block这三个属性值有什么区别?
  8. 前端学习(2063):vue的生命周期
  9. 前端学习(1904)vue之电商管理系统电商系统之修改用户的操作
  10. 前端学习(1875)vue之电商管理系统电商系统之vue代码提交到码云