使用--auto-generate-sql參數(shù)表示用mysqlslap工具自己生成的SQL腳本來測試并發(fā)壓力
創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),華池企業(yè)網(wǎng)站建設(shè),華池品牌網(wǎng)站建設(shè),網(wǎng)站定制,華池網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,華池網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
mysqlslap --auto-generate-sql -uroot -p123456
并發(fā)測試,使用–concurrency來模擬并發(fā)連接,連接數(shù)可以多個(gè),用逗號隔開
mysqlslap --auto-generate-sql --concurrency=100 -uroot -p123456
mysqlslap --auto-generate-sql --concurrency=50,100 -uroot -p123456
使用--iterations模擬迭代測試,用于需要多次執(zhí)行測試得到平均值。
mysqlslap --auto-generate-sql --iterations=5 -uroot -p123456
使用--engine測試不同的存儲引擎的性能進(jìn)行對比
mysqlslap --auto-generate-sql --concurrency=50,100 --iterations=5 --engine=myisam,innodb -uroot -p123456
--query=name,-q 指定自定義腳本執(zhí)行測試,例如可以調(diào)用自定義的一個(gè)存儲過程或者sql語句來執(zhí)行測試。--create-schema 指定自定義的測試數(shù)據(jù)庫名稱,
mysqlslap --auto-generate-sql --concurrency=50,100 --create-schema="landclash" --query="call landclash.sp_player_getname(34);" --number-of-queries=5000 -uroot -p123456
1、mysqlslap
安裝:簡單,裝了mysql就有了
作用:模擬并發(fā)測試數(shù)據(jù)庫性能。
優(yōu)點(diǎn):簡單,容易使用。
不足:不能指定生成的數(shù)據(jù)規(guī)模,測試過程不清楚針對十萬級還是百萬級數(shù)據(jù)做的測試,感覺不太適合做綜合測試,比較適合針對既有數(shù)據(jù)庫,對單個(gè)sql進(jìn)行優(yōu)化的測試。
使用方法:
可以使用mysqlslap --help來顯示使用方法:
Default options are read from the following files in the given order:
/etc/mysql/my點(diǎn)吸煙 f /etc/my點(diǎn)吸煙 f ~/.my點(diǎn)吸煙 f
--concurrency代表并發(fā)數(shù)量,多個(gè)可以用逗號隔開,concurrency=10,50,100, 并發(fā)連接線程數(shù)分別是10、50、100個(gè)并發(fā)。
--engines代表要測試的引擎,可以有多個(gè),用分隔符隔開。
--iterations代表要運(yùn)行這些測試多少次。
--auto-generate-sql 代表用系統(tǒng)自己生成的SQL腳本來測試。
--auto-generate-sql-load-type 代表要測試的是讀還是寫還是兩者混合的(read,write,update,mixed)
--number-of-queries 代表總共要運(yùn)行多少次查詢。每個(gè)客戶運(yùn)行的查詢數(shù)量可以用查詢總數(shù)/并發(fā)數(shù)來計(jì)算。
--debug-info 代表要額外輸出CPU以及內(nèi)存的相關(guān)信息。
--number-int-cols :創(chuàng)建測試表的 int 型字段數(shù)量
--auto-generate-sql-add-autoincrement : 代表對生成的表自動添加auto_increment列,從5.1.18版本開始
--number-char-cols 創(chuàng)建測試表的 char 型字段數(shù)量。
--create-schema 測試的schema,MySQL中schema也就是database。
--query 使用自定義腳本執(zhí)行測試,例如可以調(diào)用自定義的一個(gè)存儲過程或者sql語句來執(zhí)行測試。
--only-print 如果只想打印看看SQL語句是什么,可以用這個(gè)選項(xiàng)。
mysqlslap -umysql -p123 --concurrency=100 --iterations=1 --auto-generate-sql --auto-generate-sql-add-autoincrement --auto-generate-sql-load-type=mixed --engine=myisam --number-of-queries=10 --debug-info
或:
指定數(shù)據(jù)庫和sql語句:
mysqlslap -h192.168.3.18 -P4040 --concurrency=100 --iterations=1 --create-schema='test' --query='select * from test;' --number-of-queries=10 --debug-info -umysql -p123
要是看到底做了什么可以加上:--only-print
Benchmark
Average number of seconds to run all queries: 25.225 seconds
Minimum number of seconds to run all queries: 25.225 seconds
Maximum number of seconds to run all queries: 25.225 seconds
Number of clients running queries: 100
Average number of queries per client: 0
以上表明100個(gè)客戶端同時(shí)運(yùn)行要25秒
2、sysbench
安裝:
可以從 下載
tar zxf sysbench-0.4.12.tar.gz
cd sysbench-0.4.12
./autogen.sh
./configure make make install
strip /usr/local/bin/sysbench
安裝時(shí)候可能會報(bào)錯,后來baidu發(fā)現(xiàn)個(gè)好文 怕以后找不到,也貼過來吧
1.如果mysql不是默認(rèn)路徑安裝,那么需要通過指定--with-mysql-includes和--with-mysql-libs參數(shù)來加載mysql安裝路徑
2.如果報(bào)錯:
../libtool: line 838: X--tag=CC: command not found
../libtool: line 871: libtool: ignoring unknown tag : command not found
../libtool: line 838: X--mode=link: command not found
../libtool: line 1004: *** Warning: inferring the mode of operation is deprecated.: command not found
../libtool: line 1005: *** Future versions of Libtool will require --mode=MODE be specified.: command not found
../libtool: line 2231: X-g: command not found
../libtool: line 2231: X-O2: command not found
那么執(zhí)行下根目錄的:autogen.sh文件,然后重新configure make make install
3.如果報(bào)錯:
sysbench: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
那么執(zhí)行下:
n -s /usr/local/mysql5.5/mysql/lib/libmysqlclient.so.18 /usr/lib64/
4.如果執(zhí)行autogen.sh時(shí),報(bào)如下錯誤:
./autogen.sh: line 3: aclocal: command not found
那么需要安裝一個(gè)軟件:
yum install automake
然后需要增加一個(gè)參數(shù):查找: AC_PROG_LIBTOOL 將其注釋,然后增加AC_PROG_RANLIB
作用:模擬并發(fā),可以執(zhí)行CPU/內(nèi)存/線程/IO/數(shù)據(jù)庫等方面的性能測試。數(shù)據(jù)庫目前支持MySQL/Oracle/PostgreSQL
優(yōu)點(diǎn):可以指定測試數(shù)據(jù)的規(guī)模,可以單獨(dú)測試讀、寫的性能,也可以測試讀寫混合的性能。
不足:測試的時(shí)候,由于網(wǎng)絡(luò)原因,測試的非常慢,但是最終給的結(jié)果卻很好,并發(fā)支持很高,所以給我的感覺是并不太準(zhǔn)確。當(dāng)然也可能我沒搞明白原理
使用方法:
準(zhǔn)備數(shù)據(jù)
sysbench --test=oltp --mysql-table-engine=myisam --oltp-table-size=400000 --mysql-db=dbtest2 --mysql-user=root --mysql-host=192.168.1.101 --mysql-password=pwd prepare
執(zhí)行測試
sysbench --num-threads=100 --max-requests=4000 --test=oltp --mysql-table-engine=innodb --oltp-table-size=400000 --mysql-db=dbtest1 --mysql-user=root --mysql-host=192.168.1.101 --mysql-password=pwd run
sysbench 0.4.12: multi-threaded system evaluation benchmark
No DB drivers specified, using mysql
Running the test with following options:
Number of threads: 100
Doing OLTP test.
Running mixed OLTP test
Using Special distribution (12 iterations, 1 pct of values are returned in 75 pct cases)
Using "BEGIN" for starting transactions
Using auto_inc on the id column
Maximum number of requests for OLTP test is limited to 4000
Threads started!
Done.
OLTP test statistics:
queries performed:
read: 56014
write: 20005
other: 8002
total: 84021
transactions: 4001 (259.14 per sec.)
deadlocks: 0 (0.00 per sec.)
read/write requests: 76019 (4923.75 per sec.)
other operations: 8002 (518.29 per sec.)
Test execution summary:
total time: 15.4393s
total number of events: 4001
total time taken by event execution: 1504.7744
per-request statistics:
min: 33.45ms
avg: 376.10ms
max: 861.53ms
approx. 95 percentile: 505.65ms
Threads fairness:
events (avg/stddev): 40.0100/0.67
execution time (avg/stddev): 15.0477/0.22
3、tpcc-mysql
安裝:
如果從原網(wǎng)站上下載源碼比較麻煩,需要工具、注冊、生成證書等。這里提供一個(gè)下載包
export C_INCLUDE_PATH=/usr/include/mysql
export PATH=/usr/bin:$PATH
export LD_LIBRARY_PATH=/usr/lib/mysql
cd /tmp/tpcc/src
make
然后就會在 /tmp/tpcc-mysql 下生成 tpcc 命令行工具 tpcc_load 、 tpcc_start
作用:測試mysql數(shù)據(jù)庫的整體性能
優(yōu)點(diǎn):符合tpcc標(biāo)準(zhǔn),有標(biāo)準(zhǔn)的方法,模擬真實(shí)的交易活動,結(jié)果比較可靠。
不足:不能單獨(dú)測試讀或者寫的性能,對于一些以查詢?yōu)橹骰蛘咧粚懙膽?yīng)用,就沒有這么大的意義了。
使用方法:
加載數(shù)據(jù)
創(chuàng)建庫
mysqlcreate database tpcc10;
創(chuàng)建表:
shellmysql tpcc10 create_table.sql
添加外鍵:
shellmysql tpcc10 add_fkey_idx.sql
加載數(shù)據(jù):
1、單進(jìn)程加載:
shell./tpcc_load 192.168.11.172 tpcc10 root pwd 300
|主機(jī)||數(shù)據(jù)庫||用戶||密碼||warehouse|
2、并發(fā)加載:(推薦,但需要修改一下)
shell./load.sh tpcc300 300
|數(shù)據(jù)庫||warehouse|
3、測試
./tpcc_start -h192.168.11.172 -d tpcc -u root -p 'pwd' -w 10 -c 10 -r 10 -l 60 -i 10 -f /mnt/hgfs/mysql/tpcc100_2013522.txt
***************************************
*** ###easy### TPC-C Load Generator ***
***************************************
option h with value '192.168.11.172'
option d with value 'tpcc'
option u with value 'root'
option p with value 'pwd'
option w with value '1'
option c with value '100'
option r with value '120'
option l with value '60'
option i with value '10'
option f with value '/mnt/hgfs/mysql/tpcc100_2013522.txt'
Parameters
[server]: 192.168.11.172
[port]: 3306
[DBname]: tpcc
[user]: root
[pass]: pwd
[warehouse]: 1
[connection]: 100
[rampup]: 120 (sec.)
[measure]: 60 (sec.)
RAMP-UP TIME.(120 sec.)
MEASURING START.
命令行:
net
start
mysql
如果能啟動,那說明安裝成功了。
如果想查詢默認(rèn)的數(shù)據(jù)庫,你可以用mysqlfont,或者直接命令行操作
進(jìn)入安裝目錄下的bin文件夾,或者配置好環(huán)境變量,然后
mysql
-uroot
-p
接著輸入密碼!~
ok!~
PHP MySQL Linux現(xiàn)在已逐漸成為小型web服務(wù)器的一種經(jīng)典組合。在Windows環(huán)境下構(gòu)筑和調(diào)試MySQL數(shù)據(jù)庫是許多網(wǎng)站研發(fā)者的一種最好選擇。本人在Windows98環(huán)境下初學(xué)MySQL,現(xiàn)將學(xué)習(xí)過程和經(jīng)驗(yàn)總結(jié)出來供大家參考。
1、下載mysql-3.23.35-win.zip并解壓;
2、運(yùn)行setup.exe;選擇d:mysql,"tyical install"
3、啟動mysql,有如下方法:方法一:使用winmysqladmin
1)、進(jìn)入d::mysqlbin目錄,運(yùn)行winmysqladmin.exe,在屏幕右下角的任務(wù)欄內(nèi)會有一個(gè)帶紅色的圖符
2)、鼠標(biāo)左鍵點(diǎn)擊該圖符,選擇“show me”,出現(xiàn)“WinMySQLAdmin”操作界面;首次運(yùn)行時(shí)會中間會出現(xiàn)一個(gè)對話框需要輸入并配置您的用戶名和口令
3)、選擇“My.INI setup”
4)、在“mysqld file”中選擇“mysqld-opt”(win9x)或“mysqld-nt”(winNT)
5)、選擇“Pick-up or Edit my.ini values”能夠在右邊窗口內(nèi)對您的my.ini文檔進(jìn)行編輯
6)、選擇“Save Modification”保存您的my.ini文檔
7)、假如您想快速使用winmysqladmin(開機(jī)時(shí)自動運(yùn)行),選擇“Create ShortCut on Start Menu”
8)、測試:
進(jìn)入DOS界面;
在d:mysqlbin目錄下運(yùn)行mysql,進(jìn)入mysql交互操作界面
輸入show databases并回車,屏幕顯示出當(dāng)前已有的兩個(gè)數(shù)據(jù)庫mysql和test方法二:不使用winmysqladmin
1)、在DOS窗口下,進(jìn)入d:/mysql/bin目錄
2)、win9X下)運(yùn)行:mysqld在NT下運(yùn)行:
mysqld-nt --standalone
3)、此后,mysql在后臺運(yùn)行
4)、測試mysql:(在d:/mysql/bin目錄下)
a)、mysqlshow 正常時(shí)顯示已有的兩個(gè)數(shù)據(jù)庫mysql和test
b)、mysqlshow -u root mysql 正常時(shí)顯示數(shù)據(jù)庫mysql里的五個(gè)表:columns_priv,db,host,tables_priv,user
c)、mysqladmin version status proc 顯示版本號、狀態(tài)、進(jìn)程信息等
d)、mysql test 進(jìn)入mysql操作界面,當(dāng)前數(shù)據(jù)庫為test
4、至此,MySQL已成功安裝,接著能夠熟悉MySQL的常用命令并創(chuàng)建自己的數(shù)據(jù)庫了。
網(wǎng)站題目:怎么用mysql測試數(shù)據(jù) 測試mysql 數(shù)據(jù)庫連接
網(wǎng)頁路徑:http://muchs.cn/article4/ddiejoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、網(wǎng)站維護(hù)、小程序開發(fā)、電子商務(wù)、云服務(wù)器、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)