首頁 > 專題 > 寶塔面板 > 怎麼透過寶塔面板實現MySQL效能簡單調優

怎麼透過寶塔面板實現MySQL效能簡單調優

藏色散人
發布: 2021-02-07 14:57:28
轉載
3021 人瀏覽過

以下由寶塔面板教學專欄為大家介紹怎麼透過寶塔面板實現MySQL效能簡單調優,希望對需要的朋友有幫助!

怎麼透過寶塔面板實現MySQL效能簡單調優

透過寶塔面板實現MySQL效能簡單調優

在PHP MYSQL架構網站運作過程中,往往會遇到各種效能問題影響,如MySQL、PHP、CPU、磁碟IO、快取等,其中MySQL瓶頸就是最常見也最難解決的一種影響網站效能的因素;通常,我們會使用redis、memcached等快取軟體來快取內容,這確實是最優的解決方案之一,但這需要網站程式的支持,然而多數常用網站程式並不支持或不能完美支持這些快取軟體,今天我們就來談談如何透過MySQL自身的配置調整來優化MySQL效能,以緩解MySQL瓶頸問題。

準備:

1、寶塔Linux面板正式版5.2.0 (2017/09/20發布)  測試版5.2.4     

2 、MySQL 5.x

通常MySQL調優我們分成以下幾個部分:

#1、MySQL設定參數調優(需要依照網站運作調整)

##2、數據表索引調優(效果明顯,但通常優秀的開源程式都不需要調整)

3、SQL語句調優(這是程式設計師或DBA幹的事)

今天我們主要談談如果配合寶塔面板的新功能來進行MySQL配置參數調優,我們先來看兩張圖片

怎麼透過寶塔面板實現MySQL效能簡單調優

怎麼透過寶塔面板實現MySQL效能簡單調優

#很明顯,(圖1)顯示的是MySQL目前的運作狀態,(圖2)顯示的是MySQL主要設定參數

下面我們就來解讀這兩張圖:

1、活動/尖峰連線數      (圖1)中目前活動的連線為1個,自MySQL服務啟動以來,最高連線數為54;當最高連線數接近或等於(圖2 )中的max_connections時,應適當增加max_connections,需要注意的是,不要一下子增加過多,建議每次增加50,觀察一段時間,不夠再繼續增加。

2、執行緒快取命中率      (圖1)中執行緒快取命中率為99.78%,若這個值小於90%,建議適當增加(圖2)的thread_cache_size,建議每次增加8。

3、索引命中率      (圖1)中索引命中率為99.50%,若這個值小於95%,建議適當增加(圖2)中的key_buffer_size,建議每次增加64,需要說明的是,若您的資料庫使用的是Innodb引擎,可忽略這個選項

4、Innodb索引命中率       (圖1)中Innodb索引命中率為100%,若這個值小於95%,建議適當增加(圖2)中的innodb_buffer_pool_size,建議每次增加64,需要說明的是,若您的資料庫沒有使用Innodb引擎,可忽略這個選項

5、查詢快取命中率      MySQL查詢快取是個比較受爭議的功能,個人建議當你有在使用redis、memcached等快取軟體時,在(圖2)中將query_cache_size設為0可以將其關閉,當你沒有使用快取軟體,有多餘的記憶體使用,且當資料庫瓶頸明顯存在時,可以嘗試開啟查詢緩存,這是個非常依賴資料表結構及SQL語句優化的功能,若資料表結構和SQL語句都針對查詢快取進行過最佳化,它的效果還是很不錯的。

6、建立臨時表到磁碟      (圖1)中建立臨時表到磁碟的比例是0.42%,這表示大部分臨時表都建立到記憶體了,不會過多增加磁碟IO的開銷,建議,當比例大於2%時適當增加(圖1)中的tmp_cache_size,建議每次增加32,當比例大於60%時,放棄吧,有些開源程式並沒有專門優化過SQL語句,所以在運行過程中會開啟大量臨時表,加多少快取都是不夠用的。

7、已開啟的表      當(圖1)中的已開啟的表格接近或等於(圖2)中的table_open_cache時,可以適當增加table_open_cache,但若設定過大可能會導致您的程序頻繁中斷MySQL連接,建議在1024以內,最大不要超過2048。

###8、沒有使用索引的量、沒有使用索引的JOIN量      若不為0,就檢查下資料表索引吧,其實只要沒有瘋漲,比如一天增漲幾千,一般可以忽略,必竟優化索引還是程式設計師或DBA去乾比較適合。 ###

9、排序後的合併次數      如果這個值在緩慢增張,建議適當增加(圖2)中的sort_buffer_size,建議每次增加512,但最大不要超過8192,如果這個值一直在瘋漲,增加sort_buffer_size也沒用,就放棄這個選項吧,這個鍋子還是給程式開發者背。

10、鎖定表次數      若伺服器CPU開銷不大的情況下,瘋狂鎖定表,建議你將所有資料表轉換成innodb,記得轉換前備份喔。

11、最佳化方案      這個是我們根據記憶體大小給的一個建議最佳化方案,只是建議只用於基礎參考值,還是要根據實據情況來調整每一個組態項目。

注意:儲存參數設定後不會立即生效,記得要重新啟動MySQL服務。

以上是怎麼透過寶塔面板實現MySQL效能簡單調優的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板