問題現象:
使用libmysqlclient撰寫一個客戶端,參考相關說明在mysql_init之前和mysql_real_connect之后做了如下設定:
bool reconnect = 0;
mysql_options(db_handle, MYSQL_OPT_RECONNECT, &reconnect);
unsigned int uTimeOut = 1;
mysql_options(db_handle, MYSQL_OPT_CONNECT_TIMEOUT, &uTimeOut);
mysql_options(db_handle, MYSQL_OPT_READ_TIMEOUT, &uTimeOut);
mysql_options(db_handle, MYSQL_OPT_WRITE_TIMEOUT, &uTimeOut);
執行mysql_query時,斷開網路,出現阻塞,程式會一直卡在這兒。
使用netstat -an | grep 3306 在資料庫所在的機器上發現TCP鏈接已經中斷,但在客戶端所在的機器TCP連接還在ESTABLISHED中。
經測驗大概 15分鐘后才會感知TCP連接中斷。
請教各位大神其中的原因!
uj5u.com熱心網友回復:
補充說明,是在ubuntu 上做的測驗。uj5u.com熱心網友回復:
直接用MYSQL本身提供的命令列客戶端嘗試一下相同的查詢,是否有中斷現象。轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/81774.html
標籤:MySQL
