C MySQL自動重連不起作用

2021-10-05 02:46:36 字數 1111 閱讀 4868

使用c++程式設計時,利用 mysql的c語言介面編寫程式,用 mysql_options 設定了自動重連:

mysql_init

(&m_instance )

;//mysql_close free mysql_init init object

char optval=1;

mysql_options

(&m_instance,mysql_opt_reconnect,

&optval)

;mysql_options

(&m_instance, mysql_set_charset_name,

"utf8");

if(mysql_real_connect

(&m_instance, m_server.

data()

, m_username.

data()

, m_password.

data()

, m_database.

data()

, m_port,0,

0)==null

)

使用程式連續傳送sql請求伺服器。

伺服器是使用centos7.0系統安裝mysql8.0,執行

systemctl restart mysqld.service
伺服器重啟後的sql請求都失敗了,說明客戶端的自動重連失敗

經過查詢 mysql的官方文件.

發現

mysql_options

(&mysql, mysql_opt_reconnect,

&reconnect)

;

所設定的重連並不是連線斷開就自動重連,而是在執行 mysql_ping() 的時候,如果連線斷開了且自動重連設定為了true,則 mysql_ping() 會進行自動重連;若沒有設定為自動重連,則 mysql_ping() 僅返回當前連線狀態是否正常。

在每次 mysql_query() 之前,先執行一次

if

(mysql_ping

(&mysql)!=0

)

jquery ajax return不起作用

最近做專案時,發現乙個問題,但卻不知道怎麼改,耐著性子問了一下午的度娘,終於找到答案 問題 jquery ajax提交,return值一直都無法獲取 原因 ajax請求和後面的處理是非同步執行的,也就是說,有可能ajax還沒執行完,還沒走到return的部分,ajax請求後面的 已經執行完畢 所以a...

setMargins不起作用

在用viewpage做廣告滾動的效果,根據 的數量,每個 生成乙個圓點用來表示,當前 滾動的位置,但是用layoutparams 物件設定圓點的高和寬都正常,用setmargins設定圓點的間距卻無效,請高手解答 private void initui context context else ml...

gitignore不起作用

gitignore中已經標明忽略的檔案目錄下的檔案,git push的時候還會出現在push的目錄中,原因是因為在git忽略目錄中,新建的檔案在git中會有快取,如果某些檔案已經被納入了版本管理中,就算是在.gitignore中已經宣告了忽略路徑也是不起作用的,這時候我們就應該先把本地快取刪除,然後...