connect_timeout、interactive_timeout、wait_timeout、net_read_timeout、net_write_timeout、
[@more@]
“And God said, Let there be network: and there was timeout”
在使用MySQL的過程中,你是否遇到了眾多讓人百思不得其解的Timeout?
那么這些Timeout之后,到底是代碼問題,還是不為人知的匠心獨具?
本期Out-man,講述咱們MySQL DBA自己的Timeout。
先看一下比較常見的Timeout參數和相關解釋:
connect_timeout
The number of seconds that the mysqld server waits for a connect packet before responding with Bad handshake.
interactive_timeout
The number of seconds the server waits for activity on an interactive connection before closing it.
wait_timeout
The number of seconds the server waits for activity on a noninteractive connection before closing it.
net_read_timeout
The number of seconds to wait for more data from a connection before aborting the read.
net_write_timeout
The number of seconds to wait for a block to be written to a connection before aborting the write.
從以上解釋可以看出,connect_timeout在獲取連接階段(authenticate)起作用,interactive_timeout和wait_timeout在連接空閑階段(sleep)起作用,而net_read_timeout和net_write_timeout則是在連接繁忙階段(query)起作用。
獲取MySQL連接是多次握手的結果,除了用戶名和密碼的匹配校驗外,還有IP->HOST->DNS->IP驗證,任何一步都可能因為網絡問題導致線程阻塞。為了防止線程浪費在不必要的校驗等待上,超過connect_timeout的連接請求將會被拒絕。
即使沒有網絡問題,也不能允許客戶端一直占用連接。對于保持sleep狀態超過了wait_timeout(或interactive_timeout,取決于CLIENT_INTERACTIVE標志)的客戶端,MySQL會主動斷開連接。
即使連接沒有處于sleep狀態,即客戶端忙于計算或者存儲數據,MySQL也選擇了有條件的等待。在數據包的分發過程中,客戶端可能來不及響應(發送、接收、或者處理數據包太慢)。為了保證連接不被浪費在無盡的等待中,MySQL也會選擇有條件(net_read_timeout和net_write_timeout)地主動斷開連接。
這么多Timeout足以證明MySQL是多么樂于斷開連接。而樂于斷開連接的背后,主要是為了防止服務端共享資源被某客戶端(mysql、mysqldump、頁面程序等)一直占用。
看完上述內容,你們對MySQL中Timeout的作用是什么有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注本站行業資訊頻道,感謝大家的支持。
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
全球通銀卡客戶是什么意思?全球通銀卡客戶是指客戶在中國移動的一種等級。全球通銀卡指的是全球通客戶的評級是銀卡等級,是指客戶在中國移動的評定等級。根據不同的評級,移動客戶可以享受的權益也不-樣。其中,全球通銀卡可以享受全球最高的服務。全球通銀卡的加入條件全球通銀卡的添加標準是戶在網上年度的消費積分需要超過2900分,并且戶需要為中國移動通訊“全球通”的品牌客戶。全球通銀卡的積...
什么是外貿收款?外貿收款,顧名思義就是對外貿易收款,可以簡單的分為兩類:1,網上支付類,可以直接在網上完成付款,快捷、方便,第三方支付公司保障,可拒付,消費者利益得到保障。從另一方面來說,相對的風險稍大,主要以小額收款為主。①電子賬戶類別:主要付款是電子賬戶對電子賬戶模式(類似于支付寶與支付寶交易,雙方均需要注冊、有賬戶),主要有PayPal、MoneyBookers、Ap、Google chec...
十一假期股市不開盤。以2020年十一假期股市的相關規定為例,根據上交所和深交所公布的股市休市時間,2020年國慶休市時間為10月1日(星期四)至10月8日 (星期四) ,10月9日(星期五) 起照常開市。另外,9月27日(星期日)、10月10日(星期六)為周末,屬于正常休市時間。股票市場是股票發行和交易的場所,包括發行市場和流通市場兩部分。股份公司通過面向社會發行股票,迅速集中大資金,實現生產的規...