Mysql
如何正確執行 MySQL 烘烤?
我想針對其他一些分支(例如 Percona 伺服器、MariaDB 以及可能的其他一些分支)對 MySQL 伺服器 rpm 進行性能測試(又名烘焙)。我希望通過提出這個問題,我可以更好地理解設置適當性能測試背後的方法。我計劃使用 sysbench 來執行我的實際測試,但我對任何事情都持開放態度。
- 我應該採取哪些步驟來確保測試結果是蘋果對蘋果的比較,並且只有 RDBMS 是變體?
- 我從哪裡開始?
- 我如何評估結果?
- 你能給我什麼建議?
這是我首先想到的
- 設置 3 個數據庫伺服器(相同的 HW/OS 配置),每個都安裝有
- MySQL
- 佩爾科納
- 瑪麗亞數據庫
- 使用MONyog安裝第四台伺服器(評估版持續 30 天)
- 在 MONyog 中註冊 3 個 DB 伺服器
- 使用MONyog中的性能指標圖表或在MONyog中設置您自己的圖表
- 自行決定對所有 3 台數據庫伺服器使用 SysBench
這只是一個基本的大綱。相信我,您可以直接**使用Monyog。在 MonYog 的網站上查看我的推薦信(在頁面上查找我的名字)。我最終說服我的公司在我的推薦信之後直接購買了終極版,他們和我一起看著它發生。
警告:在您擁有 3 個數據庫伺服器和 Sysbench 準備好獲得 MonYog 的最佳 30 天使用之前,不要使用 Monyog。
更新 2011-06-20 13:18 EDT
如果您保持 InnoDB 緩衝池較小(innodb_buffer_pool_size的預設值為 8M)並禁用二進制日誌(不要在 my.cnf 中包含log-bin),那麼應該測量這些指標
- Innodb_buffer_pool_pages_flushed
- Innodb_buffer_pool_write_requests
- Innodb_row_lock_time_avg
- Innodb_os_log_fsyncs
- 查詢,問題
- SELECTs (( Com_select + Qcache_hits ) / 問題)
- 插入((Com_insert + Com_replace)/問題)
- 更新(Com_update / 問題)
- 刪除(Com_delete / 問題)
其中許多是 MONyog 的 Monitors/Advisors 部分中的預設圖表,並且可以創建更多圖表來檢查其他所需的 MySQL 指標。MONyog 還允許您將圖形導出為 CSV 數據。
更新 2011-10-12 14:17 EDT
- MySQL 4.1
- MySQL 5.0
- MySQL 5.1(內置 InnoDB)
- 帶有 InnoDB 外掛的 MySQL 5.1
- MySQL 5.5
- MySQL 5.6
所有測試都是在未配置 MySQL 的情況下執行的。結果?
- MySQL 4.1 執行最好的單執行緒
- 帶有 InnoDB 外掛的 MySQL 5.1 在多核上的擴展優於內置的 5.1 InnoDB、5.5 和 5.6
我能從中得到什麼?您必須配置 MySQL 5.5/5.6 才能獲得多核增強功能。