第6章 数据库性能测试-mysql篇

第6章 数据库性能测试-mysql性能测试

1、mysql数据库分支介绍

2、mysql数据库监控指标

  • QPS

  • TPS

  • 线程连接数

  • Query Cache

    • Query Cache命中率
  • 锁定状态

  • 主从延时

3、mysql慢查询工作原理及操作

  • 慢查询定义

  • 慢查询开启

  • 慢查询日志分析

  • 举例

4、SQL的分析与调优方法:SQL语句性能分析

  • explain执行计划
    • 用法:explain select 语句,explain select * from user;
  • explain返回结果分析







5、mysql索引的概念及作用

1、普通索引 index:加速查找

  • ​最基本的索引,没有任何限制
    2、唯一索引:(primary key / unique)

  • 主键索引 primary key :加速查找+约束(不为空、不能重复)

    • ​它是一种特殊的唯一索引,不允许有空值
    • ​默认的id,
  • 唯一索引 unique:加速查找+约束(不能重复)

    • ​索引猎德值必须唯一,但允许有空值

3、全文索引

  • fulltext是一种只适用于myISAM标的一个索引类型。

4、联合索引

  • primary key(id,name):联合主键索引
  • unique(id,name):联合唯一索引
  • index(id,name):联合普通索引

6、mysql索引的工作原理与设计规范

  • 索引创建规范


7、mysql存储引擎:根据场景选择;

1、MyISAM 存储引擎

  • 优点:
    • 查询(读)的效率要优于innodb,不需要支持事务,行级锁, 外键, 可通过设置myisam来优化数据库
    • 索引与数据分开,使用了压缩哟,从而提高了内存使用率
  • 缺点:
    • 不支持事务
    • 写入数据时直接锁表;不支持行锁,只支持表锁。导致写入速度慢

2、InnoDB 存储引擎
innodb(创建表时默认的):

  • 优点:
    • 支持事务,行级锁,外键
  • 缺点:
    • 不支持fulltext索引(全文索引)
    • 行级锁并不绝对,当不确定扫描范围时,锁全表
    • 索引与数据是紧密捆绑的,没有使用压缩导致体积庞大

8、mysql实时监控:工具orzdba

输入启动 ./orzdba
举例:输入以下查看结果

9、mysql集群监控方案:天兔LEPUS


打开官网——点击文档——查看安装

10、mysql性能测试的用例准备,使用jmeter开发mysql性能测试脚本,执行测试


  • 增删改查,参数化;
  • 关注:部署好监控,指标;查看测试效果:找出速度很慢的慢查询,SQL语句是否合理,数据库的架构是否合理;异常类测试-策略切换

posted @ 2020-02-15 19:12  吃一口冰淇淋  阅读(393)  评论(0编辑  收藏  举报