圧力測定sysbench

IPアーキテクチャ

sysbenchサーバーを展開:172.17.100.107

圧力テストサーバー:172.17.100.100

MySQLの展開ディレクトリ:は/ usr / local / mysqlの

 

前の作品

1.のMySQLのインストールを完了します(MySQL5.7が自動的にスクリプトの最新バージョンをデプロイしますMySQL5.7自動展開スクリプトを

ダイナミックライブラリファイル2.コンプリートをインストールします。

yumをインストール-yのopensslのlibtool  


#は、エラーが発生する可能性があります

1. は/ usr / binに/ LD::メイクする前に、あなたはそれ以外の場合はエラーになります、libのライブラリを変更する必要が -lmysqlclient_r見つけることができません

インストールが向けられているのでlibには/ usr / local / mysqlの/ libに

CDは/ usr / local / mysqlの/ libに

LN -s libmysqlclient.so.20.3.9 libmysqlclient_r.so

2. マニフェストエラーが存在しないのメイク、./sysbench実行エラー

./sysbench:エラー共有ライブラリのロード中:libmysqlclient.so.18する:そのようなファイルやディレクトリはありません:共有オブジェクトファイルを開くことができません。

LN -s /usr/local/mysql/lib/libmysqlclient.so.18は/ usr / lib64に

エラーがある場合

/ usr / local / sysbench / binに/ sysbench:エラー共有ライブラリのロード中に:libmysqlclient.so.20を:そのようなファイルやディレクトリはありません:共有オブジェクトファイルを開くことができません。

そして、実行

LN -s /usr/local/mysql/lib/libmysqlclient.so.20は/ usr / lib64に


 

sysbench取付部

①総最適化されたバージョンの葉(中...従来のバージョンMGR・テスト・ピットは、テキストの最後に更新されています)

私はピットについてお話しましょう:テスト環境では、葉の全バージョンは、テストスタンドアローンおよびマスターのために利用可能です。

しかし、裏でMGRの完了は、エラーが発生し、このテストsysbench、1032(主キー違反)を使用して構築された後、エラーには現在、10回の以上のテストを通じてちょうど約前後に決定することで、詳細な研究は、(2回リロード途中MGR)は、両方が与えられました。

 

ダウンロード

イェジンのWebサイトでは圧縮されたパッケージsysbenchをダウンロードします

wgetのhttp://imysql.com/wp-content/uploads/2014/09/sysbench-0.4.12-1.1.tgz

 

配備します

タール-xf sysbench-0.4.12-1.1.tgz

MV sysbench-0.4.12-1.1 sysbench

CP -r sysbenchは/ usr / local / sysbench

 

CDは/ usr / local / sysbench

./autogen.sh

#の設定ファイル

./configure --prefix =は/ usr / local / sysbench / --with-のMySQL-含ま= は/ usr / local /のMySQL /含む/ --with-のMySQL-LIBS = は/ usr / local /のMySQL / LIB /

libディレクトリに対応するLIBSは、MySQLで、ディレクトリは、対応するMySQLを含んで含まれている必要があり、ここで注意してください

 

インストールを完了します

作る&& make installを

(エラーの確認なし)

 

インストールの確認

/ usr / local / sysbench / binに/ sysbench --help

次のテキストが表示された場合は、展開を成功さを示します

[ルート@のGTID01ビン]#は/ usr / local / sysbench / binに/ sysbench --help

必要なコマンドargument.Usageがありません:sysbench [一般オプション] ... --test = [テストオプション] ...コマンド

一般的なオプション:

  --num-スレッド使用するスレッドのN =番号[1]

  要求の合計数= N限界--max-リクエスト[10000]

...

 

環境変数を増やします

エコー-e "輸出PATH = \ $ PATH:は/ usr / local / sysbench / binに" >> / etc / profileを

ソースは/ etc / profile


sysbenchテストの準備を使用します

先読み:LUAスクリプトのコメントでSysBench


 

sysbenchテストを使用します

まず(100ライブラリをテストするために、107で、ここで)ユーザー認証を構築し、データベースを構築カレーをテスト

mysqlの-h 172.17.100.100 -uroot -p

...

データベースsbtestを作成; ##ここで設定されたLUAスクリプトはsbtestライブラリは、ライブラリ名は、スクリプトの内容と一致していなければならないので、

TPCC 『「によって識別される』ユーザーtpcc@'172.17.100.%を作成します。

sbtest上のすべての権限を付与* 'tpcc@'172.17.100.%します。

フラッシュ権限;

 


エラー処理を(変更のInnoDB oltp.lua mysiamした後、あなたがテーブルを見つけることができません)を生成

CDは/ usr / local / sysbench / sysbench /テスト/ DB /

CP oltp.lua oltp_innodb.lua

SED -iさん/ MyISAMの/ InnoDBの/ G '/usr/local/sysbench/sysbench/tests/db/oltp_innodb.lua


 

テスト圧力の多機能テーブル(イェビデオ、マルチテーブルpercona sysbenchサポートによると、しかし、公式バージョンをサポートしていませんが、私は例の公式バージョンを見つけることができませんでしたが、テストsysbenchで使用することはできません)

実行準備

sysbench --mysqlホスト= 172.17.100.100 --mysqlポート= 3306 --mysqlユーザー= TPCC --mysql-パスワード= TPCC --test =は/ usr / local / sysbench / sysbench /テスト/ DB / OLTP。 LUA --oltp_tables_count = 10 --oltpテーブルサイズ= 100000準備に--rand-INIT =

...

sysbench 0.5:マルチスレッド・システム評価基準

テーブル「sbtest1」を作成しています...

「sbtest1」へ100000件のレコードを挿入

...

テーブル「sbtest10」を作成しています...

「sbtest10に100000件のレコードを挿入

 

実行実行

sysbench --mysqlホスト= 172.17.100.100 --mysqlポート= 3306 --mysqlユーザー= TPCC --mysql-パスワード= TPCC --test =は/ usr / local / sysbench / sysbench /テスト/ DB / OLTP。 LUA --oltp_tables_count = 10 --oltpテーブルサイズ= 100000 --num-スレッド= 4 --oltp -読み取り専用=オフ--report-間隔= 5 --rand型=均一--max時間= 30 --max-要求= 0 --percentile = 99実行

 

--num-スレッド4 //スレッドの数= 4

--max-時間= 30 //テスト時間は30秒です

--report-間隔= 5 //レポートの印刷サイクルは5秒です

--oltp-読み取り専用=オフ//読み取り専用非試験運転

処刑の--max-要求= 0 //最大数は、唯一MAX-時間によって制限され、本明細書中に限定されません

 

4つのスレッド

 
 

8つのスレッド

 
 

16件のスレッド

 
 

読み:38024を//読み取りの合計数、select文

書き込み:書き込み、挿入、削除、更新文の10864が//総数

その他:など、コミットとして5432の//その他の記述、

合計:文の54320 //総数は実行します

取引:2716 (秒あたり90.31。)  //物事の合計数(★物事の秒数あたり:TPS★)

read/write requests: 48888 (1625.67 per sec.)  //读写请求次数(★每秒的读写次数:QPS★)

other operations: 5432 (180.63 per sec.)    //其它操作的每秒执行数

General statistics:

total time: 30.0726s        //总时间

total number of events: 2716    //★事物总数★

total time taken by event execution: 480.7371s   //所有事务耗时相加(不考虑并行因素)

response time:    //应答时间

min: 21.62ms    //最小

avg: 177ms    //平均

max: 598.59ms    //最大

approx. 99 percentile: 421.51ms  //99%语句执行时间

Threads fairness:  //线程公平性

events (avg/stddev): 169.7500/2.38

execution time (avg/stddev): 30.0461/0.02

 

需要重点关注的几个测试结果

★总的事物数,每秒事务数TPS,QPS,时间统计信息(最大、最小、平均、99%以上语句响应时间)★

通过sysbench结果来判定数据库的能力主要还是通过TPS

 

执行清除

sysbench --mysql-host=172.17.100.100 --mysql-port=3306 --mysql-user=tpcc --mysql-password=tpcc --mysql-db=sbtest --oltp-tables-count=10 --oltp-table-size=100000 --num-threads=16 --max-requests=0 --max-time=30 --report-interval=1 --test=/usr/local/sysbench/sysbench/tests/db/oltp.lua cleanup

sysbench 0.5: multi-threaded system evaluation benchmark

Dropping table 'sbtest1'...

Dropping table 'sbtest2'...

Dropping table 'sbtest3'...

 


②原始版本(该版本目前只测试了MGR环境,常规环境没有验证过,但应该没有问题)

大体的安装和叶总版本差不多,这里就写的简略一些了

前置条件准备

yum install -y openssl libtool gcc make automake pkgconfig libaio-devel vim-common

下载并安装

wget https://github.com/akopytov/sysbench/archive/master.zip

tar -xf master.zip

mkdir -p /usr/local/sysbench/

cd sysbench-master/

./autogen.sh

./configure --prefix=/usr/local/sysbench/ --with-mysql --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib

make

make install

#如果后面验证那一步报错是18,就把下面的20换成18,反正我CenOS6.8的环境不执行下面这句都是报20的错

ln -s /usr/local/mysql/lib/libmysqlclient.so.20 /usr/lib64

echo -e "export PATH=\$PATH:/usr/local/sysbench/bin" >> /etc/profile

source /etc/profile

#验证

sysbench --version

#自行去目标数据库完成建用户(tpcc/tpcc),建库(sbtest)

执行测试

sysbench /usr/local/sysbench/share/sysbench/oltp_read_write.lua --mysql-host=172.17.100.101 --mysql-port=3306 --mysql-user=tpcc --mysql-password=tpcc --mysql-db=sbtest --tables=5 --table_size=100000 --mysql_storage_engine=Innodb prepare

sysbench /usr/local/sysbench/share/sysbench/oltp_read_write.lua --mysql-ホスト= 172.17.100.101 --mysqlポート= 3306 --mysqlユーザー= TPCC --mysql-パスワード= TPCC --mysql-DB = sbtest --tables = 5 --table_size = 100000 --mysql_storage_engine = INNODB --threads = 3 --time = 600 --warmup時間= 10 --report間隔= 10 --rand型=均一ラン

テストパターン(メインライブラリMGRの単一グループに対する書き込み)乾燥

 


著者:トールギスフライング
ます。https://www.jianshu.com/p/d0abdc29cd7aリンク
出典:ジェーン・ブック
著者によって予約ジェーンブックの著作権は、いかなる形で再現され、承認を得るために作者に連絡して、ソースを明記してください。

おすすめ

転載: www.cnblogs.com/cheyunhua/p/10949844.html