亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在設置了MYSQL_OPT_RECONNECT之后,mysql_ping是否還有必要?

在設置了MYSQL_OPT_RECONNECT之后,mysql_ping是否還有必要?

慕桂英546537 2018-08-28 17:20:20
根據官方文檔:Checks whether the connection to the server is working. If the connection has gone down and auto-reconnect is enabled an attempt to reconnect is made. If the connection is down and auto-reconnect is disabled, mysql_ping() returns an error.也就是說,如果 MYSQL_OPT_RECONNECT 沒有被設置為 1(開啟),那么mysql_ping()不會完成自動重連,只是簡單返回一個error。那么如果已經開啟這個選項了呢?官方文檔又說了:MYSQL_OPT_RECONNECT (argument type: my_bool *)Enable or disable automatic reconnection to the server if the connection is found to have been lost.也就是說,如果發現連接斷開,那么會啟動自動重連功能。現在問題是:連接斷開這事兒是啥時候被發現的呢?根據官方文檔mysql_ping()肯定是會發現,那mysql_query()是否會"發現"呢?
查看完整描述

2 回答

?
紫衣仙女

TA貢獻1839條經驗 獲得超15個贊

需要的,不加ping的話鏈接斷開的情況下query會失敗但是會重連下次query才會正常,所以封裝下query比較穩

查看完整回答
反對 回復 2018-09-09
?
臨摹微笑

TA貢獻1982條經驗 獲得超2個贊

寫代碼測試 + 追了一下MySQL的源碼,結論是mysql_query()會"發現"。只要直接或間接調用了MySQL源碼中 cli_advanced_command() 的函數,都會"發現"。

由于整個過程挺復雜的,詳情就不列出來了,有興趣的同學可以參考我的這篇博客。


查看完整回答
反對 回復 2018-09-09
  • 2 回答
  • 0 關注
  • 2428 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號