MySQL效能測試分析

2021-06-09 22:22:49 字數 3082 閱讀 6475

分類: 資料庫開發與應用

2009-10-16 03:07

1824人閱讀收藏

舉報 目錄(?)

[+]

測試環境

測試方法

測試記錄

測試資料

效能比較

效能分析

目錄(?)

[+]

測試環境

測試方法

測試記錄

測試資料

效能比較

效能分析

測試環境

作業系統:linux as release 4,核心2.6.9-42.elsmp #1 smp

cpu:intel(r) xeon(tm) cpu 3.00ghz,4核

記憶體:1g,主要執行mysql服務

硬碟:cciss 37g

檔案系統:ext3,支援大檔案

mysql:mysql-5.0.51a

網絡卡:100m

網路環境:100m交換區域網

測試方法

資料規模分為1萬條、10萬條、100萬條和1000萬條記錄級別。

在每種資料規模下分別執行2000次隨機查詢,這樣可以防止資料庫直接從快取中返回查詢結果,更加接近真實的查詢情況。以系統時間為隨機種子,在現有的記錄範圍內隨機執行查詢操作。

查詢型別分為:單錶select、雙表select、insert、單錶delete和雙表delete。

因為myisam和innodb是mysql使用最多的兩種引擎,也是我們公司目前使用最頻繁的引擎,因此分別做對比測試有一定的參考價值。

每個執行條目都為單次查詢的平均執行時間,單位為微妙。如果要看整體執行時間,則乘以2000即可。

由於指令碼插入資料很慢,採用mysql客戶端工具測試效率很低且不能保證足夠的隨機性,所以插入資料和測試效能都是自己編寫相應的程式來完成。

開啟二進位制更新日誌。

測試記錄

測試資料

myisam引擎跨主機查詢操作平均執行時間(單位:微秒)

專案記錄數

單錶select

雙表select

insert

update

單錶delete

雙表delete

1萬條10萬條

100萬條

1000萬條

myisam引擎本地查詢操作平均執行時間(單位:微秒)

專案記錄數

單錶select

雙表select

insert

update

單錶delete

雙表delete

1萬條10萬條

100萬條

1000萬條

發現對innodb的配置引數進行優化後,更新和插入速度可以提高10倍多。

innodb引擎跨主機單次查詢操作平均執行時間(單位:微秒)

專案記錄數

單錶select

雙表select

insert

update

單錶delete

雙表delete

1萬條10萬條

100萬條

1000萬條

innodb引擎本地單次查詢操作平均執行時間(單位:微秒)

專案記錄數

單錶select

雙表select

insert

update

單錶delete

雙表delete

1萬條10萬條

100萬條

1000萬條

效能比較

單錶select

雙表select

insert操作

update操作

單錶delete

雙表delete

效能分析

1、可以看出在mysql 5.0裡面,myisam和innodb儲存引擎效能差別並不是很大,與官方的說法基本接近。

2、1萬和10萬的select、delete或update操作都很快,1毫秒以下。

3、insert操作效能降低較慢,受資料規模影響相對較小。

4、效能從10萬條規模公升到100萬條時降低非常明顯,從100萬到1000萬效能降低更明顯。

5、innodb引擎在預設引數配置下效能較差。

innodb_buffer_pool_size = 600m

innodb_additional_mem_pool_size = 64m

# set .._log_file_size to 25 % of buffer pool size

innodb_log_file_size = 256m

#innodb_log_buffer_size = 8m

innodb_flush_log_at_trx_commit = 1

#innodb_lock_wait_timeout = 50

innodb_file_per_table

其中innodb_flush_log_at_trx_commit和innodb_file_per_table對i/o效能影響最大。

7、my-large.cnf等檔案只是優化myisam引擎的引數,這一點在優化配置時特別要注意。

8、在資料規模較大(100萬條以上),innodb引擎效能有相對優勢。

9、在資料規模較小(10萬條以下),myisam引擎效能有相對優勢。

MySQL效能測試分析

測試環境 作業系統 linux as release 4,核心2.6.9 42.elsmp 1 smp cpu intel r xeon tm cpu 3.00ghz,4核 記憶體 1g,主要執行mysql服務 硬碟 cciss 37g 檔案系統 ext3,支援大檔案 mysql mysql 5.0...

MySQL效能測試分析

mysql效能測試分析 作業系統 linux as release 4,核心2.6.9 42.elsmp 1 smp cpu intel r xeon tm cpu 3.00ghz,4核 記憶體 1g,主要執行mysql服務 硬碟 cciss 37g 檔案系統 ext3,支援大檔案 mysql my...

mysql 效能分析 Mysql效能分析

優化mysql資料庫效能的十個引數 1 max connections 允許的同時客戶的數量。增加該值增加 mysqld 要求的檔案描述符的數量。這個數字應該增加,否則,你將經常看到 too many connections 錯誤。預設數值是100,我把它改為1024 2 record buffer...