最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mysql官方性能測(cè)試工具mysqlslap的使用簡(jiǎn)介

 更新時(shí)間:2021年05月21日 10:37:58   作者:王文安@DBA  
mysqlslap隨著MySQL安裝的時(shí)候就自動(dòng)安裝好了,而且 mysqlslap 把很多的自定義測(cè)試的功能封裝到了外部,使用者只需要在外部提供 SQL 語(yǔ)句的腳本就可以自定義測(cè)試語(yǔ)句,本文將簡(jiǎn)單介紹該工具的使用

簡(jiǎn)介

MySQL 作為最流行的開(kāi)源數(shù)據(jù)庫(kù),在各個(gè)領(lǐng)域都有相當(dāng)廣泛的應(yīng)用,作為一個(gè) MySQL DBA,經(jīng)常會(huì)對(duì)數(shù)據(jù)庫(kù)進(jìn)行一些性能測(cè)試來(lái)主動(dòng)(或者是被動(dòng)的)對(duì)業(yè)務(wù)壓力做一個(gè)評(píng)估,來(lái)判斷數(shù)據(jù)庫(kù)當(dāng)前的負(fù)載以及最高的性能容量。

常見(jiàn)的性能測(cè)試工具有 sysbench 和 tpcc,這兩者都是非常優(yōu)秀的壓測(cè)工具,但是都需要特殊的編譯或者安裝,并且需要一定的開(kāi)發(fā)能力才能修改具體測(cè)試的語(yǔ)句。

mysqlslap 則是隨著 MySQL 安裝的時(shí)候就自動(dòng)安裝好了,而且 mysqlslap 把很多的自定義測(cè)試的功能封裝到了外部,使用者只需要在外部提供 SQL 語(yǔ)句的腳本就可以自定義測(cè)試語(yǔ)句,使用起來(lái)會(huì)簡(jiǎn)便一些。

使用介紹

mysqlslap 提供了非常多的參數(shù)來(lái)配置測(cè)試的項(xiàng)目的類型,這里僅摘選部分常用參數(shù)進(jìn)行說(shuō)明,詳細(xì)信息參考 mysqlslap 自身的幫助信息。

參數(shù)名

說(shuō)明

login-path=#

新版本 MySQL 提供的登錄方式

-a, --auto-generate-sql

自動(dòng)生成 SQL 語(yǔ)句

--auto-generate-sql-add-autoincrement

在自動(dòng)生成的表中添加自增列

--auto-generate-sql-execute-number=#

測(cè)試中,執(zhí)行 SQL 的總次數(shù)

--auto-generate-sql-guid-primary

生成基于 GUID 的主鍵

--auto-generate-sql-load-type=name

測(cè)試的負(fù)載模型,包括 mixed, update, write, key,read,默認(rèn)是 mix

--auto-generate-sql-secondary-indexes=#

自動(dòng)生成的表中,二級(jí)索引的數(shù)量

--auto-generate-sql-unique-query-number=#

測(cè)試中,使用唯一索引的查詢語(yǔ)句數(shù)量

--auto-generate-sql-unique-write-number=#

測(cè)試中,使用唯一索引的 DML 語(yǔ)句數(shù)量

--auto-generate-sql-write-number=#

測(cè)試中,每個(gè)線程執(zhí)行的 insert 語(yǔ)句數(shù)量,默認(rèn)為 100

--commit=#

測(cè)試中,每多少個(gè)語(yǔ)句執(zhí)行一次 commit

-c, --concurrency=name

測(cè)試中,并發(fā)的線程數(shù)/客戶端數(shù)

--create=name

自定義建表語(yǔ)句,或者是 SQL 文件的地址

--create-schema=name

測(cè)試中,使用的數(shù)據(jù)庫(kù)名

--detach=#

測(cè)試中,每執(zhí)行一定數(shù)量的語(yǔ)句后進(jìn)行重連

-e, --engine=name

指定建表時(shí)的存儲(chǔ)引擎

-h, --host=name

指定測(cè)試實(shí)例的 host 地址

-u, --user=name

指定測(cè)試實(shí)例的用戶名

-p, --password=name

指定測(cè)試實(shí)例的密碼

-P, --port=#

指定測(cè)試實(shí)例的端口

-i, --iterations=#

指定測(cè)試重復(fù)的次數(shù)

--no-drop

指定測(cè)試完成后不刪除測(cè)試用的庫(kù)表

-x, --number-char-cols=name

指定測(cè)試表中 varchar 列的數(shù)量

-y, --number-int-cols=name

指定測(cè)試表中 int 列的數(shù)量

--number-of-queries=#

指定每個(gè)線程執(zhí)行的 SQL 語(yǔ)句數(shù)量上限(不精確)

--only-print

類似于 dry run,輸出會(huì)進(jìn)行的操作,但是不會(huì)真的執(zhí)行

-F, --delimiter=name

使用文件中提供的 SQL 語(yǔ)句時(shí),顯式指定語(yǔ)句之間的分隔符

--post-query=name

指定測(cè)試完成后,執(zhí)行的查詢語(yǔ)句,或者是 SQL 語(yǔ)句的文件

--pre-query=name

指定測(cè)試開(kāi)始前,執(zhí)行的查詢語(yǔ)句,或者是 SQL 語(yǔ)句的文件

-q, --query=name

指定測(cè)試時(shí),執(zhí)行的查詢語(yǔ)句,或者是 SQL 語(yǔ)句的文件

實(shí)際體驗(yàn)

這里對(duì) mysqlslap 進(jìn)行一次簡(jiǎn)單的試用,目標(biāo)實(shí)例使用騰訊云數(shù)據(jù)庫(kù) MySQL,最簡(jiǎn)單的測(cè)試示例如下:

root@VM-64-10-debian:~# mysqlslap --concurrency=100  --iterations 10 -a  --auto-generate-sql-add-autoincrement --engine=innodb --number-of-queries=1000 -h172.1.100.10 -uroot -p
Enter password:
Benchmark
	Running for engine innodb
	Average number of seconds to run all queries: 0.046 seconds
	Minimum number of seconds to run all queries: 0.042 seconds
	Maximum number of seconds to run all queries: 0.049 seconds
	Number of clients running queries: 100
	Average number of queries per client: 10

root@VM-64-10-debian:~#

該示例中使用的就是最簡(jiǎn)單的測(cè)試模型,由 mysqlslap 自己生成所有的測(cè)試語(yǔ)句與建表語(yǔ)句。

如果要對(duì)不同并發(fā)下的性能做對(duì)比,則可以用這種方式進(jìn)行測(cè)試:

root@VM-64-10-debian:~# mysqlslap --concurrency=100,200 --iterations 10 -a --auto-generate-sql-add-autoincrement --engine=innodb --number-of-queries=1000 -h172.16.0.40 -uroot -p
Enter password:
Benchmark
	Running for engine innodb
	Average number of seconds to run all queries: 0.046 seconds
	Minimum number of seconds to run all queries: 0.045 seconds
	Maximum number of seconds to run all queries: 0.048 seconds
	Number of clients running queries: 100
	Average number of queries per client: 10

Benchmark
	Running for engine innodb
	Average number of seconds to run all queries: 0.037 seconds
	Minimum number of seconds to run all queries: 0.034 seconds
	Maximum number of seconds to run all queries: 0.052 seconds
	Number of clients running queries: 200
	Average number of queries per client: 5

root@VM-64-10-debian:~#

輸出的結(jié)果為時(shí)間,因此時(shí)間越小說(shuō)明整體性能越好。

如果要自定義測(cè)試語(yǔ)句,則可以把 SQL 語(yǔ)句寫(xiě)在文件里面,例如:

root@VM-64-10-debian:~# cat create.sql
CREATE TABLE a (b int);INSERT INTO a VALUES (23);
root@VM-64-10-debian:~# cat query.sql
SELECT * FROM a;
SELECT b FROM a;
root@VM-64-10-debian:~#
root@VM-64-10-debian:~# mysqlslap --concurrency=100,200 --query=query.sql --create=create.sql --delimiter=";" --engine=innodb --number-of-queries=1000 -h172.16.0.40 -uroot -p
Enter password:
Benchmark
	Running for engine innodb
	Average number of seconds to run all queries: 0.045 seconds
	Minimum number of seconds to run all queries: 0.045 seconds
	Maximum number of seconds to run all queries: 0.045 seconds
	Number of clients running queries: 100
	Average number of queries per client: 10

Benchmark
	Running for engine innodb
	Average number of seconds to run all queries: 0.023 seconds
	Minimum number of seconds to run all queries: 0.023 seconds
	Maximum number of seconds to run all queries: 0.023 seconds
	Number of clients running queries: 200
	Average number of queries per client: 5

root@VM-64-10-debian:~#

小結(jié)

市面上可用的 MySQL 壓測(cè)工具非常多,各個(gè)工具都有優(yōu)劣,多了解一些工具,然后根據(jù)實(shí)際需求選擇最合適的工具就能以最效率的方式完成需要的壓力測(cè)試。

以上就是Mysql官方性能測(cè)試工具mysqlslap的使用簡(jiǎn)介的詳細(xì)內(nèi)容,更多關(guān)于mysqlslap的使用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • CentOS下安裝MySQL5.6.10和安全配置教程詳解

    CentOS下安裝MySQL5.6.10和安全配置教程詳解

    這篇文章主要介紹了CentOS下安裝MySQL5.6.10和安全配置教的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-12-12
  • 巧用mysql提示符prompt清晰管理數(shù)據(jù)庫(kù)的方法

    巧用mysql提示符prompt清晰管理數(shù)據(jù)庫(kù)的方法

    隨著管理mysql服務(wù)器越來(lái)越多,同樣的mysql>的提示符有可能會(huì)讓你輸入錯(cuò)誤的命令到錯(cuò)誤的數(shù)據(jù)庫(kù),這時(shí)候需要巧用mysql的提示符,這是我的提示符root@localhost(mysql) 08:55:21> 用prompt命令實(shí)現(xiàn)(適用于windows和linux環(huán)境)
    2009-08-08
  • Mysql中undo、redo與binlog的區(qū)別淺析

    Mysql中undo、redo與binlog的區(qū)別淺析

    大家應(yīng)該都知道日志系統(tǒng)主要有redo log(重做日志)和binlog(歸檔日志),下面這篇文章主要給大家介紹了關(guān)于Mysql中undo、redo與binlog區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • 使用MySQL Workbench構(gòu)建ER圖的詳細(xì)教程

    使用MySQL Workbench構(gòu)建ER圖的詳細(xì)教程

    ER圖又稱實(shí)體-聯(lián)系圖(Entity Relationship Diagram),提供了表示實(shí)體類型、屬性和聯(lián)系的方法,用來(lái)描述現(xiàn)實(shí)世界的概念模型,MySQL?Workbench是一個(gè)強(qiáng)大的數(shù)據(jù)庫(kù)設(shè)計(jì)工具,提供了便捷的數(shù)據(jù)導(dǎo)入導(dǎo)出功能,本文介紹了使用MySQL Workbench構(gòu)建ER圖的詳細(xì)教程
    2024-06-06
  • MySQL服務(wù)器線程數(shù)的查看方法詳解

    MySQL服務(wù)器線程數(shù)的查看方法詳解

    這篇文章主要介紹了MySQL服務(wù)器線程數(shù)的查看方法,結(jié)合實(shí)例形式分析了mysql線程數(shù)查看的相關(guān)命令、配置、參數(shù)及相關(guān)使用技巧,需要的朋友可以參考下
    2018-03-03
  • MySQL授權(quán)用戶訪問(wèn)數(shù)據(jù)操作方式

    MySQL授權(quán)用戶訪問(wèn)數(shù)據(jù)操作方式

    用戶授權(quán)操作可以控制數(shù)據(jù)庫(kù)用戶對(duì)數(shù)據(jù)庫(kù)對(duì)象的訪問(wèn)權(quán)限,本文就來(lái)介紹MySQL授權(quán)用戶訪問(wèn)數(shù)據(jù)操作方式,感興趣的可以了解一下
    2023-10-10
  • mysql字符集和數(shù)據(jù)庫(kù)引擎修改方法分享

    mysql字符集和數(shù)據(jù)庫(kù)引擎修改方法分享

    使用虛擬主機(jī)空間上的phpmyadmin操作數(shù)據(jù)庫(kù)的時(shí)候,如果看到phpmyadmin首頁(yè)上顯示的MySQL 字符集為cp1252 West European (latin1),當(dāng)我們導(dǎo)入數(shù)據(jù)時(shí)就會(huì)出現(xiàn)亂碼
    2012-02-02
  • MySQL使用IF函數(shù)動(dòng)態(tài)執(zhí)行where條件的方法

    MySQL使用IF函數(shù)動(dòng)態(tài)執(zhí)行where條件的方法

    這篇文章主要介紹了MySQL使用IF函數(shù)來(lái)動(dòng)態(tài)執(zhí)行where條件,詳細(xì)介紹了IF函數(shù)在WHERE條件中的使用,MySQL的IF()函數(shù),接受三個(gè)表達(dá)式,如果第一個(gè)表達(dá)式為true,而不是零且不為NULL,它將返回第二個(gè)表達(dá)式,需要的朋友可以參考下
    2022-09-09
  • Ubuntu中遠(yuǎn)程連接Mysql數(shù)據(jù)庫(kù)的詳細(xì)圖文教程

    Ubuntu中遠(yuǎn)程連接Mysql數(shù)據(jù)庫(kù)的詳細(xì)圖文教程

    Ubuntu是一個(gè)以桌面應(yīng)用為主的Linux發(fā)行版操作系統(tǒng),這篇文章主要為大家詳細(xì)介紹了Ubuntu中遠(yuǎn)程連接Mysql數(shù)據(jù)庫(kù)的詳細(xì)圖文教程,有需要的小伙伴可以參考下
    2025-04-04
  • MYSQL 解鎖與鎖表介紹

    MYSQL 解鎖與鎖表介紹

    相對(duì)其他數(shù)據(jù)庫(kù)而言,MySQL的鎖機(jī)制比較簡(jiǎn)單,其最顯著的特點(diǎn)是不同的存儲(chǔ)引擎支持不同的鎖機(jī)制
    2017-04-04

最新評(píng)論

晋江市| 望都县| 邵阳市| 遵义市| 晋宁县| 慈溪市| 盖州市| 乡城县| 右玉县| 名山县| 麻栗坡县| 大冶市| 乐至县| 丁青县| 隆化县| 建平县| 都江堰市| 若羌县| 澳门| 北辰区| 界首市| 桦南县| 常山县| 连云港市| 乐平市| 垣曲县| 兴海县| 英德市| 通榆县| 迭部县| 上杭县| 兴隆县| 宜阳县| 清丰县| 陇南市| 兴安盟| 邓州市| 奉节县| 阜康市| 海林市| 桐柏县|