环境准备,安装sysbench

wget http://nchc.dl.sourceforge.net/project/sysbench/sysbench/0.4.12/sysbench-0.4.12.tar.gz
cd sysbench-0.4.12-1.1
sh autogen.sh
./configure
make && make install

创建tjproce.sh

cd /usr/local/nginx/html/bench1
vim tjproce.sh

内容如下

#!/bin/bash
while true
do mysql -uroot -e 'show processlist \G'|grep State|uniq|sort -rn >> proce.txt usleep 100000 //每秒执行10次
done

用sysbench进行压力测试

cd /usr/local/src/sysbench-0.4.12-1.1/sysbench/bin/
./sysbench --test=tests/db/oltp.lua --mysql-table-engine=innodb --mysql-
user=root --db-driver=mysql --mysql-db=test --oltp-table-name=user --oltp-
table-size=3000 --mysql-socket=/var/lib/mysql/mysql.sock prepare ./sysbench --test=tests/db/oltp.lua --mysql-table-engine=innodb --mysql-
user=root --db-driver=mysql --mysql-db=test --oltp-table-name=user --oltp-
table-size=3000 --mysql-socket=/var/lib/mysql/mysql.sock run //指定test库 //--test=tests/db/oltp.lua 对于某些版本可能为 --test=oltp

然后启动tjproce.sh文件

当sysbench测试结束后观察proce.txt

more proce.txt |sort|uniq -c|sort -rn

以下为状态说明

converting HEAP to MyISAM 查询结果太大时,把结果放在磁盘   //比较浪费资源
create tmp table 创建临时表(如group时储存中间结果)
Copying to tmp table on disk 把内存临时表复制到磁盘
locked 被其他查询锁住
logging slow query 记录慢查询 注:把临时表内存变小,重现前

打开mysql

show variables like '%size%';
set globle tmp_table_size=1024;
set session tmp_table_size=1024; //把mysql内存调为1024字节
set profiling=1; //打开状态观察
select * from sbtest1; //随便执行sql语句
show profiles; //这时会出现一张状态表
show profile for query 1; //后面的数字是根据上一张状态表的ID
set profiling=0; //关闭状态观察

  

  

mysql优化(2) 观察mysql进程状态的更多相关文章

  1. 【Mysql 优化 6】mysql优化的内容和思路

    根据最近做mysql优化,以及参照的官方文档的一些知识点,总结一下,如何下手去优化mysql 数据库.PS:更多可能是我个人的笔记总结记录,仅供参考 一.优化的内容 可以优化的内容,从范围的大小,可以 ...

  2. mysql优化(1) 观察服务器周期性变化

    先把nginx和memcached环境开启 /usr/local/nginx/sbin/nginx /usr/local/fastphp/sbin/php-fpm /usr/local/memcach ...

  3. MySQL优化---DBA对MySQL优化的一些总结

      非原创, 来自梦嘉朋友, 非常好的总结, 一起学习. ------------------------------------------------- 1. 要确保有足够的内存数据库能够高效的运 ...

  4. MySQL优化(一):MySQL分库分表

    一.分库分表种类 1.垂直拆分 在考虑数据拆分的时候,一般情况下,应该先考虑垂直拆分.垂直可以理解为分出来的库表结构是互相独立各不相同的. - 如果有多个业务,每个业务直接关联性不大,那么就可以把每个 ...

  5. Mysql优化系列(2)--通用化操作梳理

    前面有两篇文章详细介绍了mysql优化举措:Mysql优化系列(0)--总结性梳理Mysql优化系列(1)--Innodb引擎下mysql自身配置优化 下面分类罗列下Mysql性能优化的一些技巧,熟练 ...

  6. MYSQL学习笔记——数据库范式及MYSQL优化整体思路

    一.数据库范式                                                                               为了建立冗余较小.结构合理的 ...

  7. MySQL优化、锁

    1.  MySQL优化-查看执行记录 MySQL 提供了一个 EXPLAIN 命令, 它可以对 SELECT 语句进行分析, 并输出 SELECT 执行的详细信息, 以供开发人员针对性优化. 使用ex ...

  8. SQL高级优化(一)之MySQL优化

    不同方案效率对比 MySQL各字段默认长度(一字节为8位) 整型: TINYINT 1 字节 SMALLINT 2 个字节 MEDIUMINT 3 个字节 INT 4 个字节 INTEGER 4 个字 ...

  9. Mysql优化系列(1)--Innodb引擎下mysql自身配置优化

    1.简单介绍InnoDB给MySQL提供了具有提交,回滚和崩溃恢复能力的事务安全(ACID兼容)存储引擎.InnoDB锁定在行级并且也在SELECT语句提供一个Oracle风格一致的非锁定读.这些特色 ...

随机推荐

  1. Andrord问题小结

    问题描述:Gradle version 2.10 is required. Current version is 2.8.Gradle版本由2.8升为2.10后,发现所有依赖play-services ...

  2. Android 启动Service服务和发送Broadcast广播的常用方法

    一.先说Service服务. 1.利用setAction()方法来指定启动的Service服务 Intent intent = new Intent(); intent.setAction(" ...

  3. typedef和define的作用域

    typedef: 如果放在所有函数之外,它的作用域就是从它定义开始直到文件尾: 如果放在某个函数内,定义域就是从定义开始直到该函数结尾: #define: 不管是在某个函数内,还是在所有函数之外,作用 ...

  4. XML Dtd Schema

    在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束. 整体比较: XML Schema符合XML语法结构. DOM.SAX等XML API很容易解析出XML Schem ...

  5. 一个完整的SSL连接建立过程

    客户端浏览器连接到Web服务器,发出建立安全连接通道的请求. 服务器接受客户端请求,发送服务器证书做为响应. 客户端验证服务器证书的有效性,如果验证通过,则用服务器证书中包含的服务器公钥加密一个会话密 ...

  6. jQuery的类数组对象结构

    Query就是为了获取DOM.操作DOM而存在的 所以为了更方便这些操作,让节点与实例对象通过一个桥梁给关联起来,jQuery内部就采用了一种叫"类数组对象"的方式作为存储结构,所 ...

  7. 翻译题(map使用)

    What Are You Talking About 点我 Problem Description Ignatius is so lucky that he met a Martian yesterd ...

  8. Intuit Quicken Home & Business 2016(Manage your business and personal finances)

    Quicken Home & Business 2016 - Manage your business and personal finances all in one place. Cate ...

  9. OSCHina技术导向:Java全文搜索框架Lucene

    Lucene 是apache软件基金会一个开放源代码的全文检索引擎工具包,是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎.Lucene的目的是为软件开发人员提供一个简单易用 ...

  10. SecureCRT按退格键出现^H问题解决

    解决办法一: 解决办法二: ctrl+backspace.即是返回