用sysbench压测MySQL,通过orzdba监控MySQL
1.1 安装sysbench
wget https://codeload.github.com/akopytov/sysbench/zip/0.5
unzip 0.5
cd sysbench-0.5/
./autogen.sh
./configure --with-mysql-includes=/u01/my3306/include --with-mysqllibs=/u01/my3306/lib && make
1.2 准备sysbench 压力测试
# 准备数据 20个innodb表
/u01/sysbench-0.5/sysbench/sysbench --test=/u01/sysbench-0.5/sysbench/tests/db/select.lua --oltp-table-size=20000 --mysql-table-engine=innodb --mysql-user=root --mysql-password=root123 --mysql-port=3306 --mysql-host=127.0.0.1 --mysql-db=test --max-requests=0 --max-time=60 --oltp-tables-count=20 --report-interval=10 --num_threads=2 prepare
#MySQL新建监控用户fish
GRANT ALL PRIVILEGES ON *.* TO 'fish'@'localhost' IDENTIFIED BY '' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'fish'@'127.0.0.1' IDENTIFIED BY '' WITH GRANT OPTION;
1.3安装orzdba
代码SVN地址:http://code.taobao.org/p/orzdba/src/trunk/
说明:Perl脚本,用于对Linux主机和MySQL相关指标进行实时监控。
修改代码160行左右配置MySQL的相关验证信息,如username,password,host,port,sock等
安装tcprstat
安装orzdba_rt_depend_perl_module.tar.gz依赖包(version模块、Class-Data-Inheritable模块、Module-Build模块、
File-Lockfile模块)
vi orzdba
#修改下面的行
my $MYSQL = qq{mysql -s --skip-column-names -ufish -P$port };
# orzdba 加上可执行权限
chmod +x orzdba
#运行orzdba
./orzdba -lazy
1.4 sysbench压测
/u01/sysbench-0.5/sysbench/sysbench --test=/u01/sysbench-0.5/sysbench/tests/db/select.lua --oltp-table-size=20000 --mysql-table-engine=innodb --mysql-user=root --mysql-password=root123 --mysql-port=3306 --mysql-host=127.0.0.1 --mysql-db=test --max-requests=0 --max-time=60 --oltp-tables-count=20 --report-interval=10 --num_threads=2 run
观察
./orzdba -lazy

观察2监控InnoDB的性能指标
./orzdba -innodb -C 10 -i 1
查看Linux主机指标
./orzdba -sys -C 10 -i 1 -t -d sda
-sys:打印系统信息,包括-t(打印当前时间)、-l(打印负载信息,分1分钟、5分钟、15分钟)、-c(打印cpu信息)、-s(打印交换分区信息)
-d:打印磁盘信息,需要指点磁盘设备名
-n:打印网络信息,接收和发送大小,需要指点网卡设备名
查看DISK(-d)和NET(-n)需要带具体的设备名(具体可以查看/proc/diskstats和/proc/net/dev中的设备或者可以取自iostat
和sar -n DEV)
linux指标的数据都来自/proc目录下的相关系统元数据:
LOAD : /proc/loadavg
CPU : /proc/stat
SWAP : /proc/vmstat
DISK : /proc/diskstats
NET : /proc/net/dev
监控MySQL Server性能
./orzdba -mysql -C 10 -i 1
用sysbench压测MySQL,通过orzdba监控MySQL的更多相关文章
- sysbench对MySQL的压测,使用sysbench压测磁盘io
QPS - query per secondTPS - transaction per second 不是特别关注,每个业务场景中事务标准是不一样的 Ⅰ.sysbench测试框架 Ⅱ.常用测试脚本 [ ...
- 05:Sysbench压测-innodb_deadlock_detect参数对性能的影响
目录 sysbench压测-innodb_deadlock_detect参数对性能的影响 一.OLTP测试前准备 二.进行OLTP测试 三.测试结果解读: 四.关于测试后的结论: 五.关于测试后的性能 ...
- 04:Sysbench压测-innodb_flush_log_at_trx_commit,sync_binlog参数对性能的影响
目录 sysbench压测-innodb_flush_log_at_trx_commit,sync_binlog参数对性能的影响 一.OLTP测试前准备 二.MySQL 数据落盘的过程 三.参数说明 ...
- sysbench压测过程
1.sysbench安装(sysbench1.1.0) [root@master soft]# ls sysbench1.1.0.zip sysbench1.1.0.zip 解压: [root@ma ...
- JMeter压测基础(三)——Mysql数据库
JMeter压测基础(三)——Mysql数据库 环境准备 mysql驱动 JMeter jdbc配置 JMeter jdbc请求 1.下载mysql驱动:mysql-connector-java.ja ...
- 【MySQL】sysbench压测服务器及结果解读
主要压测范围包括CPU测试.磁盘IO测试.线程测试.OLTP测试等,那么sysbench就可以满足我们的压测需求.下面我们简单来看下sysbench的安装使用以及压测结果的解读. 一.sysbench ...
- sysbench压测自装MySQL数据库
压测准备 测试机器 2vCPUs | 4GB | s6.large.2 CentOS 7.6 64bit 建立测试库 create database test_db character set utf ...
- sysbench 压测
IP架构 sysbench部署服务器:172.17.100.107 压测服务器:172.17.100.100 MySQL部署目录:/usr/local/mysql 前置工作 1.完成MySQL的安装( ...
- sysbench压测mysql
MySQL数据库测试 select 1.先创建数据库test,再准备数据 time /usr/local/sysbench/bin/sysbench --test=oltp --num-threa ...
随机推荐
- 5天不再惧怕多线程——第一天 尝试Thread
随笔 - 218 文章 - 1 评论 - 3819 5天不再惧怕多线程——第一天 尝试Thread 原本准备在mongodb之后写一个lucene.net系列,不过这几天用到多线程时才发现自己 ...
- 文字始终均匀分布整个div
html部分 <div id="div"> <span>这是一段话,这是又一段话!</span> </div> js部分 getFu ...
- tomcat映射物理路径
<Context path="/woyoubaoweb/upload" docBase="/opt/file/image/woyoubaoweb/upload&qu ...
- 【linux】基础知识学习
[版本] 两种:内核版本 . 发行版本 内核版本从 www.kernel.org 查看 发行版本: 1.retHat, centOS 更稳定,更安全,适宜做企业服务器 2.ubuntu, Debian ...
- Flux架构
引言:本文的目标是通过了解Flux 提出的模式,来明白Flux 的核心要点,以及弄清楚它到底是什么.并且,由于Flux不是传统意义上的软件包,因此我们将仔细研究通过Flux 来解决设计思路上的问题. ...
- Spring Boot打包总结
环境配置信息 -** JDK 1.8 -** Spring Boot 1.5.3.RELEASE -** IDE: STS 3.4 Spring Boot下打包过程 基于STS创建Spring boo ...
- Java8新特性Optional、接口中的默认方法与静态方法
Optional Optional 类(java.util.Optional) 是一个容器类,代表一个值存在或不存在,原来用 null 表示一个值不存在,现在 Optional 可以更好的表达这个概念 ...
- ORM 关键
1. 老师的增删改查 1. teacher_obj.cid.add(*[1, 2, 3]) 添加(必须打散) 2. teacher_obj.cid.set([1, 2, 3]) 设置(不用打散) 2. ...
- libwebsockets libwebsockets-webserver.c hacking
/********************************************************************************** * libwebsockets ...
- 利用aop完成功能权限验证遇到的问题
报错信息如上,找不到此方法原因是services层的有的方法带了parameters! 解决:注解解析器这里的代码不变: 将得到的service层的class遍历所有方法(存在效率问题) 匹配该方法 ...