分類: 資料庫開發與應用
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...