濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > Sysbench對(duì)Mysql進(jìn)行基準(zhǔn)測(cè)試過程解析

Sysbench對(duì)Mysql進(jìn)行基準(zhǔn)測(cè)試過程解析

熱門標(biāo)簽:湖南人工外呼系統(tǒng)多少錢 芒果電話機(jī)器人自動(dòng)化 百度地圖圖標(biāo)標(biāo)注中心 申請(qǐng)外呼電話線路 石家莊電商外呼系統(tǒng) 日照旅游地圖標(biāo)注 南通自動(dòng)外呼系統(tǒng)軟件 信陽(yáng)穩(wěn)定外呼系統(tǒng)運(yùn)營(yíng)商 廣東人工電話機(jī)器人

前言

1.基準(zhǔn)測(cè)試(benchmarking)是性能測(cè)試的一種類型,強(qiáng)調(diào)的是對(duì)一類測(cè)試對(duì)象的某些性能指標(biāo)進(jìn)行定量的、可復(fù)現(xiàn)、可對(duì)比的測(cè)試。

進(jìn)一步來理解,基準(zhǔn)測(cè)試是在某個(gè)時(shí)候通過基準(zhǔn)測(cè)試建立一個(gè)已知的性能水平(稱為基準(zhǔn)線),當(dāng)系統(tǒng)的軟硬件環(huán)境發(fā)生變化之后再進(jìn)行一次基準(zhǔn)測(cè)試以確定那些變化對(duì)性能的影響,這也是基準(zhǔn)測(cè)試最常見的用途。其他用途包括測(cè)定某種負(fù)載水平下的性能極限、管理系統(tǒng)或環(huán)境的變化、發(fā)現(xiàn)可能導(dǎo)致性能問題的條件等等。

2.基準(zhǔn)測(cè)試的作用:

對(duì)于大多數(shù)Web應(yīng)用而言,系統(tǒng)的瓶頸往往很容易發(fā)生在數(shù)據(jù)庫(kù)端,原因很簡(jiǎn)單:Web應(yīng)用中的其他因素,例如網(wǎng)絡(luò)帶寬、負(fù)載均衡節(jié)點(diǎn)、應(yīng)用服務(wù)器(包括CPU、內(nèi)存、硬盤燈、連接數(shù)等)、緩存,都很容易通過水平的擴(kuò)展(俗稱加機(jī)器)來實(shí)現(xiàn)性能的提高。而對(duì)于數(shù)據(jù)庫(kù)如MySQL,由于數(shù)據(jù)一致性的要求,無法通過增加機(jī)器來分散向數(shù)據(jù)庫(kù)寫數(shù)據(jù)帶來的壓力;雖然可以通過前置緩存(Redis等)、讀寫分離、分庫(kù)分表來減輕壓力,但是與系統(tǒng)其它組件的水平擴(kuò)展相比,受到了太多的限制。
而對(duì)數(shù)據(jù)庫(kù)的基準(zhǔn)測(cè)試的作用,就是分析在當(dāng)前的配置下(包括硬件配置、OS、數(shù)據(jù)庫(kù)設(shè)置等),數(shù)據(jù)庫(kù)的性能表現(xiàn),從而找出數(shù)據(jù)庫(kù)的性能閾值,并根據(jù)實(shí)際系統(tǒng)的要求調(diào)整配置。除此之外,對(duì)數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行基準(zhǔn)測(cè)試,也通常用于觀察對(duì)比數(shù)據(jù)庫(kù)結(jié)構(gòu)修改之前以及修改之后,其性能會(huì)受到什么樣的影響。

3.基準(zhǔn)測(cè)試與壓力測(cè)試區(qū)別:

很多時(shí)候,基準(zhǔn)測(cè)試和壓力測(cè)試在實(shí)際使用的過程中,很容易被弄混淆?;鶞?zhǔn)測(cè)試可以理解為針對(duì)系統(tǒng)的一種壓力測(cè)試。但基準(zhǔn)測(cè)試不關(guān)心業(yè)務(wù)邏輯,更加簡(jiǎn)單、直接、易于測(cè)試,數(shù)據(jù)可以由工具生成,不要求真實(shí);而壓力測(cè)試一般考慮業(yè)務(wù)邏輯(如購(gòu)物車業(yè)務(wù)),要求真實(shí)的數(shù)據(jù)。

4.基準(zhǔn)測(cè)試工具:

SysBench是一個(gè)模塊化的、跨平臺(tái)、多線程基準(zhǔn)測(cè)試工具,主要用于評(píng)估測(cè)試各種不同系統(tǒng)參數(shù)下的數(shù)據(jù)庫(kù)負(fù)載情況。它主要包括以下幾種方式的測(cè)試:

1、cpu性能

2、磁盤io性能

3、調(diào)度程序性能

4、內(nèi)存分配及傳輸速度

5、POSIX線程性能

6、數(shù)據(jù)庫(kù)性能(OLTP基準(zhǔn)測(cè)試)

目前sysbench主要支持 MySQL,pgsql,oracle 這3種數(shù)據(jù)庫(kù)。

安裝

yum -y install sysbench

sysbench --help ##檢查安裝是否成功

友情提示:安裝出現(xiàn)依賴包缺少可以看這里

數(shù)據(jù)準(zhǔn)備

準(zhǔn)備

create database sysbench_test;

show databases; #檢查數(shù)據(jù)庫(kù)

quit #退出


2. 開始

find / -name oltp*.lua #查找sysbench自帶的數(shù)據(jù)寫入腳本的路徑,后面執(zhí)行命令需要用到

sysbench /usr/share/sysbench/oltp_read_write.lua --tables=5 --table_size=100 --mysql-user=root --mysql-password=xxx --mysql-host=192.168.0.103 --mysql-port=3306 --mysql-db=sysbench_test prepare
#/usr/share/sysbench/oltp_read_write.lua :上面查詢到的sysbench自帶讀寫腳本的路徑
#--tables:指定生成表的數(shù)量,此處設(shè)置了5張表,表明生成5張測(cè)試表,讀者可根據(jù)實(shí)際需要,調(diào)整此值。
#--table_size:指定生成表中生成的數(shù)據(jù)量,上述例子,表明每張表生成100條測(cè)試數(shù)據(jù),實(shí)際可以根據(jù)需要調(diào)整引值,比如調(diào)整為:1000000,即代表生成一百萬條測(cè)試數(shù)據(jù)。
#--mysql-db: 連接的測(cè)試數(shù)據(jù)庫(kù)名稱,此處使用上面創(chuàng)建的數(shù)據(jù)庫(kù)進(jìn)行測(cè)試。
#--mysql-user: 連接的數(shù)據(jù)庫(kù)的用戶名
#--mysql-password: 連接的數(shù)據(jù)庫(kù)的密碼
#--mysql-port: 連接的數(shù)據(jù)庫(kù)開發(fā)的端口

執(zhí)行提示錯(cuò)誤

原因:

導(dǎo)入的數(shù)據(jù)超過數(shù)據(jù)庫(kù)默認(rèn)的值

解決:

需要到安裝mysql的服務(wù)器上修改數(shù)據(jù)配置

vim /etc/my.cnf

修改max_allowed_packet的值,如果沒有則在最后面添加一行

再次執(zhí)行成功,mysql客服端檢查一下數(shù)據(jù)

執(zhí)行測(cè)試

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-user=root --mysql-password=xxx --mysql-host=192.168.0.103 --mysql-port=3306 --mysql-db=sysbench_test --tables=5 --table_size=100 --threads=10 --time=30 --report-interval=3 run
#--threads:表示線程數(shù)
#--time:表示執(zhí)行時(shí)間
#--report-interval:表示間隔多少秒輸出測(cè)試信息
# run :表示運(yùn)行,其他參數(shù)信息和上面一致就不在講解了

上述命令,表明使用了10個(gè)并發(fā)線程數(shù),執(zhí)行時(shí)間為30秒,每3秒輸出一次測(cè)試信息

其中,對(duì)于我們比較重要的信息包括:

  • queries:查詢總數(shù)及qps
  • transactions:事務(wù)總數(shù)及tps
  • Latency-95th percentile:前95%的請(qǐng)求的響應(yīng)時(shí)間。

清理數(shù)據(jù)

測(cè)試完成后別忘了最后的收尾工作,大量的測(cè)試數(shù)據(jù)存在數(shù)據(jù)庫(kù)還是有影響的.

sysbench /usr/share/sysbench/oltp_read_write.lua --tables=5 --table_size=100 --mysql-user=root --mysql-password=xxx --mysql-host=192.168.0.103 --mysql-port=3306 --mysql-db=sysbench_test cleanup
#這里的參數(shù)按之前插入數(shù)據(jù)的參數(shù)填寫,確保全部清除干凈


檢查數(shù)據(jù)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • MySQL數(shù)據(jù)庫(kù)基于sysbench實(shí)現(xiàn)OLTP基準(zhǔn)測(cè)試
  • 通過sysbench工具實(shí)現(xiàn)MySQL數(shù)據(jù)庫(kù)的性能測(cè)試的方法
  • sysbench對(duì)mysql壓力測(cè)試的詳細(xì)教程
  • 使用sysbench來測(cè)試MySQL性能的詳細(xì)教程
  • 用sysbench來測(cè)試MySQL的性能的教程
  • MySQL性能壓力基準(zhǔn)測(cè)試工具sysbench的使用簡(jiǎn)介

標(biāo)簽:合肥 天津 公主嶺 阿里 惠州 呼和浩特 沈陽(yáng) 牡丹江

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Sysbench對(duì)Mysql進(jìn)行基準(zhǔn)測(cè)試過程解析》,本文關(guān)鍵詞  Sysbench,對(duì),Mysql,進(jìn)行,基準(zhǔn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Sysbench對(duì)Mysql進(jìn)行基準(zhǔn)測(cè)試過程解析》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Sysbench對(duì)Mysql進(jìn)行基準(zhǔn)測(cè)試過程解析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    宜兰市| 石景山区| 永宁县| 七台河市| 溧水县| 三河市| 莒南县| 柳河县| 南昌县| 山东省| 郎溪县| 旅游| 静宁县| 滦南县| 拜城县| 怀化市| 庆城县| 大连市| 长顺县| 雅安市| 涞源县| 成武县| 龙州县| 白河县| 万源市| 天等县| 锡林浩特市| 新沂市| 尖扎县| 高雄县| 壶关县| 年辖:市辖区| 神木县| 武宁县| 汉沽区| 会理县| 安福县| 石林| 潢川县| 道孚县| 陕西省|