mysql調優具體理論 萬金油 新浪部落格

2021-10-10 12:10:29 字數 1281 閱讀 2672

參考

4.1.1修改back_log引數值:由預設的50修改為500.(每個連線256kb,占用:125m)

back_log=500

back_log值指出在mysql暫時停止回答新請求之前的短時間內多少個請求可以被存在堆疊中。也就是說,如果mysql的連線資料達到max_connections時,新來的請求將會被存在堆疊中,以等待某一連線釋放資源,該堆疊的數量即back_log,如果等待連線的數量超過back_log,將不被授予連線資源。將會報:unauthenticated user | ***.***.***.*** | null | connect | null | login | null 的待連線程序時.

back_log值不能超過tcp/ip連線的偵聽佇列的大小。若超過則無效,檢視當前系統的tcp/ip連線的偵聽佇列的大小命令:cat /proc/sys/net/ipv4/tcp_max_syn_backlog目前系統為1024。對於linux系統推薦設定為小於512的整數。

修改系統核心引數,)

檢視mysql 當前系統預設back_log值,命令:

show variables like 'back_log'; 檢視當前數量

4.1.2修改wait_timeout引數值,由預設的8小時,修改為30分鐘。(本次不用)

wait_timeout=1800(單位為妙)

我對wait-timeout這個引數的理解:mysql客戶端的資料庫連線閒置最大時間值。

說得比較通俗一點,就是當你的mysql連線閒置超過一定時間後將會被強行關閉。mysql預設的wait-timeout  值為8個小時,可以通過命令show variables like 'wait_timeout'檢視結果值;。

設定這個值是非常有意義的,比如你的**有大量的mysql鏈結請求(每個mysql連線都是要記憶體資源開銷的 ),由於你的程式的原因有大量的連線請求空閒啥事也不幹,白白占用記憶體資源,或者導致mysql超過最大連線數從來無法新建連線導致「too many connections」的錯誤。在設定之前你可以檢視一下你的mysql的狀態(可用show processlist),如果經常發現mysql中有大量的sleep程序,則需要 修改wait-timeout值了。

interactive_timeout:伺服器關閉互動式連線前等待活動的秒數。互動式客戶端定義為在mysql_real_connect()中使用client_interactive選項的客戶端。

這兩個引數必須配合使用。否則單獨設定wait_timeout無效

eTOM並非萬金油

支撐系統不僅支撐操作層 通訊產業報 您認為在運營支撐系統建設中需要注意哪些問題?王衛鄉 作為乙個企業來講,從管理的角度可以分為三層。最上面是決策層,中間是管理層,最下面是操作層。整個結構基本上是乙個金字塔形的。最下面的操作層最大,最上面的決策層最小。現在的運營支撐系統最早是從電信網路的執行維護管理系...

開源CFD並非萬金油

今天有在群裡討論開發cfd軟體的事情,眾說紛紜,有提到 沒有必要開發cfd軟體了,直接使用開源openfoam就行 但個人認為這說法還是有一些需要商榷的地方,開源軟體也不是萬金油。以下部分內容翻譯自 caewatch,有修改。當人們在談論開源cfd解決方案時,經常會聽到下面的這兩種描述 開源cfd並...

zabbix 萬金油 新浪部落格

zabbix 可以監控指令碼 zabbix 自定義監控專案 root web1 wc l etc passwd 41 etc passwd root web1 cat etc passwd wc l 41 root web1 sed n etc passwd 41 root web1 awk end...