下面一起來(lái)了解下如何壓測(cè)mysql5.6中audit.log插件性能損耗,相信大家看完肯定會(huì)受益匪淺,文字在精不在多,希望如何壓測(cè)mysql5.6中audit.log插件性能損耗這篇短內(nèi)容是你想要的。
成都創(chuàng)新互聯(lián)是專業(yè)的洛龍網(wǎng)站建設(shè)公司,洛龍接單;提供成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營(yíng)銷網(wǎng)站建設(shè),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行洛龍網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!測(cè)試虛擬機(jī)環(huán)境:
主機(jī):
CPU:Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz 4核
內(nèi)存:1G
磁盤:SCSI硬盤 10G
數(shù)據(jù)庫(kù):
版本:5.6.34
參數(shù): innodb_buffer_pool_size = 128M、 innodb_io_capacity = 2000
以下是我的測(cè)試腳本:cat for_sysbench.sh
#!/bin/sh time=3600 #0.0 for thread in {16,32,64,128,256} do echo "now the number of theads is $thread" echo "============================================================================================================================================" /bin/sh /home/linzj/shell/mysql.sh restart sleep 30 sysbench --test=oltp --mysql-host=192.168.110.100 --mysql-port=3306 --mysql-user=root --mysql-password=root --mysql-db=sbtest1 --oltp-num-tables=10 --oltp-table-size=500000 --report-interval=10 --max-requests=0 --oltp-test-mode=nontrx --oltp-nontrx-mode=select --oltp-read-only=off --max-time=$time --num-threads=$thread run echo "============================================================================================================================================" done >> /tmp/sysbench.log.0.0 #1.1 sed -i 's/sync_relay_log=0/sync_relay_log=1/g' /etc/my.cnf sed -i 's/sync_binlog=0/sync_binlog=1/g' /etc/my.cnf sed -i 's/innodb_flush_log_at_trx_commit = 0/innodb_flush_log_at_trx_commit = 1/g' /etc/my.cnf for thread in {32,256} do echo "now the number of theads is $thread" echo "============================================================================================================================================" /bin/sh /home/linzj/shell/mysql.sh restart sleep 30 sysbench --test=oltp --mysql-host=192.168.110.100 --mysql-port=3306 --mysql-user=root --mysql-password=root --mysql-db=sbtest1 --oltp-num-tables=10 --oltp-table-size=500000 --report-interval=10 --max-requests=0 --oltp-test-mode=nontrx --oltp-nontrx-mode=select --oltp-read-only=off --max-time=$time --num-threads=$thread run echo "============================================================================================================================================" done >> /tmp/sysbench.log.1.1 #100.2 sed -i 's/sync_relay_log=1/sync_relay_log=100/g' /etc/my.cnf sed -i 's/sync_binlog=1/sync_binlog=100/g' /etc/my.cnf sed -i 's/innodb_flush_log_at_trx_commit = 1/innodb_flush_log_at_trx_commit = 2/g' /etc/my.cnf for thread in {32,256} do echo "now the number of theads is $thread" echo "============================================================================================================================================" /bin/sh /home/linzj/shell/mysql.sh restart sleep 30 sysbench --test=oltp --mysql-host=192.168.110.100 --mysql-port=3306 --mysql-user=root --mysql-password=root --mysql-db=sbtest1 --oltp-num-tables=10 --oltp-table-size=500000 --report-interval=10 --max-requests=0 --oltp-test-mode=nontrx --oltp-nontrx-mode=select --oltp-read-only=off --max-time=$time --num-threads=$thread run echo "============================================================================================================================================" done >> /tmp/sysbench.log.100.2
其實(shí)這里測(cè)試時(shí)間不應(yīng)該只有3600s,表個(gè)數(shù)和行數(shù)也不是太大,如果要獲得更為準(zhǔn)確的壓測(cè)值,建議調(diào)大測(cè)試時(shí)間、表的行數(shù)和線程并發(fā)數(shù)。
測(cè)試出來(lái)的數(shù)據(jù)如下:
not audit_log.so | sync_binlog=0 innodb_flush_log_at_trx_commit=0 innodb_io_capacity = 2000 innodb_buffer_pool_size = 128M | sync_binlog=1 innodb_flush_log_at_trx_commit=1 innodb_io_capacity = 2000 innodb_buffer_pool_size = 128M | sync_binlog=100 innodb_flush_log_at_trx_commit=2 innodb_io_capacity = 2000 innodb_buffer_pool_size = 128M | |||
thread number | transactions | 95% response time | transactions | 95% response time | transactions | 95% response time |
16 | 32213495 | 0.25ms | 29410504 | 0.25ms | 30523665 | 0.35ms |
32 | 26159190 | 0.98ms | 27709880 | 0.66ms | 26933062 | 0.68ms |
64 | 83298987 | 0.23ms | 86423634 | 0.23ms | 77157030 | 0.27ms |
128 | 88715124 | 0.34ms | 90817420 | 0.35ms | 81349362 | 0.41ms |
256 | 66369520 | 2.19ms | 69010422 | 1.98ms | 71505144 | 1.81ms |
audit_log.so | sync_binlog=0 innodb_flush_log_at_trx_commit=0 innodb_io_capacity = 2000 innodb_buffer_pool_size = 128M | sync_binlog=1 innodb_flush_log_at_trx_commit=1 innodb_io_capacity = 2000 innodb_buffer_pool_size = 128M | sync_binlog=100 innodb_flush_log_at_trx_commit=2 innodb_io_capacity = 2000 innodb_buffer_pool_size = 128M | |||
thread number | transactions | 95% response time | transactions | 95% response time | transactions | 95% response time |
16 | 28692966 | 0.50ms | 30227040 | 0.44ms | 30635231 | 0.43ms |
32 | 26350208 | 0.69ms | 26789217 | 0.64ms | 26515925 | 0.66ms |
64 | 58260078 | 0.45ms | 60129266 | 0.41ms | 62635925 | 0.37ms |
128 | 61384728 | 0.69ms | 62435697 | 0.67ms | 64455354 | 0.59ms |
256 | 55560177 | 2.83ms | 55683833 | 2.87ms | 56068342 | 2.79ms |
從測(cè)試的數(shù)據(jù)可以發(fā)現(xiàn):
1、數(shù)據(jù)庫(kù)的audit插件的使用,確實(shí)損耗了一定的數(shù)據(jù)庫(kù)性能,如果以最佳壓測(cè)性能的128個(gè)線程并發(fā)的數(shù)據(jù)來(lái)看,有audit功能的數(shù)據(jù)庫(kù)在同等壓測(cè)時(shí)間下,事務(wù)數(shù)占比少了30%以上,響應(yīng)時(shí)間延長(zhǎng)了1倍。
2、數(shù)據(jù)庫(kù)性能并非同并發(fā)線程數(shù)呈線性關(guān)系,在并發(fā)數(shù)達(dá)到128時(shí),事務(wù)數(shù)和響應(yīng)時(shí)間均為最佳,接下來(lái)再繼續(xù)增加并發(fā),性能反而下降。
3、這里測(cè)試數(shù)據(jù)sync_binlog和innodb_flush_log_at_trx_commit為雙1的時(shí)候,性能反而高。這里應(yīng)該是參數(shù)調(diào)整or壓測(cè)時(shí)間不足導(dǎo)致。至少innodb_buffer_pool_size應(yīng)該調(diào)整為內(nèi)存的80%。所以這份測(cè)試數(shù)據(jù)也僅僅作為參考,需要再繼續(xù)調(diào)整參數(shù)后再進(jìn)行壓測(cè)才能得到更為準(zhǔn)確的數(shù)值。
看完如何壓測(cè)mysql5.6中audit.log插件性能損耗這篇文章后,很多讀者朋友肯定會(huì)想要了解更多的相關(guān)內(nèi)容,如需獲取更多的行業(yè)信息,可以關(guān)注我們的行業(yè)資訊欄目。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。