• 强大的MySQL 官方压测神器


    mysqlslap是mysql自带的基准测试工具,该工具查询数据,语法简单,灵活容易使用.该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较。

    mysqlslap为mysql性能优化前后提供了直观的验证依据,系统运维和DBA人员应该掌握一些常见的压力测试工具,才能准确的掌握线上数据库支撑的用户流量上限及其抗压性等问题。

    1、更改其默认的最大连接数

    在对MySQL进行压力测试之前,需要更改其默认的最大连接数,如下:

    1.  
      [root@mysql ~]# vim /etc/my.cnf
    2.  
      ................
    3.  
      [mysqld]
    4.  
      max_connections=1024
    5.  
      [root@mysql ~]# systemctl restart mysqld

    查看最大连接数

    1.  
      mysql> show variables like 'max_connections';
    2.  
      +-----------------+-------+
    3.  
      | Variable_name   | Value |
    4.  
      +-----------------+-------+
    5.  
      | max_connections | 1024  |
    6.  
      +-----------------+--------+
    7.  
      1 row in set (0.00 sec)

    进行压力测试:

    1.  
      [root@mysql ~]# mysqlslap --defaults-file=/etc/my.cnf --concurrency=100,200 --iterations=1 --number-int-cols=20 --number-char-cols=30 
    2.  
      --auto-generate-sql --auto-generate-sql-add-autoincrement --auto-generate-sql-load-type=mixed --engine=myisam,innodb --number-of-queries=2000 -uroot -p123 --verbose

    上述命令测试说明:模拟测试两次读写并发,第一次100,第二次200,自动生成SQL脚本,测试表包含20个init字段,30个char字段,每次执行2000查询请求。测试引擎分别是myisam,innodb。(上述选项中有很多都是默认值,可以省略,如果想要了解各个选项的解释,可以使用mysqlslap --help进行查询)。

    测试结果说明:

    • Myisam第一次100客户端同时发起增查用0.557/s,第二次200客户端同时发起增查用0.522/s

    • Innodb第一次100客户端同时发起增查用0.256/s,第二次200客户端同时发起增查用0.303/s

    可以根据实际需求,一点点的加大并发数量进行压力测试。

  • 相关阅读:
    ITIL 4Foundation认证
    Linux服务器安全之 fail2ban的安装与配置
    Linux的常用基础命令
    jQuery源码学习(2):选择器初窥
    jQuery源码学习(1):整体架构
    从字符串拼接看JS优化原则
    理解函数作用域与闭包
    JavaScript DOM节点操作总结
    函数声明与函数表达式、变量提升
    CSS长度单位详解
  • 原文地址:https://www.cnblogs.com/silyvin/p/14372197.html
Copyright © 2020-2023  润新知