mysql5.1關於自動重連的一些變化
以前mysql用的是3.23的版本,在呼叫C API的時候,基本不用重連的設定,但是現在使用mysql5.1,發現每天早上連線都會斷掉,感覺很奇怪,仔細查閱文件,發現有2個引數:interactive_timeout,wait_timeout(預設為28800秒),意思是如果28800秒沒有任何操作,連線就自動斷掉,但是奇怪的是為什麼3.23也有這個引數卻沒發生這樣是問題呢?後發現在5.0.3後,預設是超時斷掉後不自動重連,如果需要設定為自動重連,需要在mysql_init()之後,用mysql_options()來設定MYSQL_OPT_RECONNECT為1,這樣就可以自動重連了!!
下面是連線的函式:
int xdbmysql_connect (XdbMysqlBackend *self, const char *host, const char *port,
const char *user, const char *pass, const char *db)
{
int nport;
char value = 1;
if (!port || sscanf(port, "%d", &nport) < 1)
nport = 0;
mysql_init(&(self->mysql));
mysql_options(&(self->mysql), MYSQL_OPT_RECONNECT, (char *)&value);
self->connection = mysql_real_connect(&(self->mysql), host, user, pass,
db, nport, NULL, 0);
if (!xdbmysql_is_connected(self))
return 0;
//add by zld(b)
strcpy(st_ui.host,host);
strcpy(st_ui.port,port);
strcpy(st_ui.usr,user);
strcpy(st_ui.pwd,pass);
strcpy(st_ui.dbn,db);
//add by zld(e)
return 1;
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7916042/viewspace-903568/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 關於iOS自動化打包的一些分享iOS
- 關於UI自動化技術及測試的一些看法UI
- 關於一些變數的使用變數
- 資料庫自動重連資料庫
- 關於自動化運維的思考-基線運維
- 關於Web端-UI自動化測試WebUI
- 關於jenkins自動化打包探索Jenkins
- 關於自動化平臺的動態選單設計
- netty系列之:自動重連Netty
- 關於自動化平臺的動態選單設計(二)
- 關於自動化構建的思維導圖解析圖解
- 關於介面測試自動化的總結與思考
- 關於 ui 自動化測試 driver 疑問?UI
- 基於DotNetty實現自動釋出 - 自動檢測程式碼變化Netty
- MySQL8.0 · 引擎特性 · 關於undo表空間的一些新變化MySql
- 如何實現工具無關化?關於自動化測試指令碼的設計指令碼
- 【SQL】關於Oracle12c SQL調整中一些變化SQLOracle
- win10 自動重啟關閉方法_win10自動重啟怎麼關閉Win10
- 關於效能優化的一些實踐優化
- 關於URL優化的一些經驗優化
- 關於REACT正規化的一些思考React
- Python 實現斷網自動重連Python
- 關於 變址影像(indexed image) 的一些總結Index
- 關於資料庫連線的一些小問題資料庫
- 關於動態連結串列的理解
- win10為什麼關機後自動重啟 win10關機後自動重啟的方法Win10
- Chris Dixon:關於移動的一些思考
- 關於介面測試——自動化框架的設計與實現框架
- 關於 SAP UI5 應用的自動化測試方法UI
- 關於跑自動化 docker 映象的問題給出個注意?Docker
- 20. Makefile中的自動化變數變數
- 一個奇特的mac地址自動變化Mac
- 自動化測試框架: 設計的重構框架
- 學習自動化測試的一些感悟
- 關於安卓遊戲自動化方面的資料整理-1安卓遊戲
- 關於迴流與重繪優化的探索優化
- 關於研發規範化的一些思考
- 關於Application型別的變數一些問題。APP型別變數