小屋創作

日誌2018-08-17 22:23

MySQL server has gone away (timeout)

作者:GJLMoTea


昨天晚上離開實驗室時,用python掛著一隻程式
(使用AWS Rekognition做人臉辨識後 新增一筆ID到mysql資料庫中,欲做教室點名系統)

然後隔天 也就是今天跑去看點影
晚上來實驗室發現程式已跳錯
"MySQL server has gone away"

畫面卡在今天第一個進實驗室開燈的人的frame
點名紀錄除了昨天離開時辨識到的我的資料外,其餘一筆都沒有
(原本想看看今天有誰進實驗室的,結果連一筆資料都沒紀錄到就炸ㄌ QQ)


Mysql會發生這個問題,有兩種原因
一種是寫入的檔案太大 無法寫入
另一種是與Mysql之間的連線 Tme Out


我的情況是第二種,

解法是在mysql設定檔新增兩個變數:
wait_timeout = 2
interactive_timeout = 2
( interactive_timeout 是用在交互對談模式上 (也就是我現在的狀況)、另一個 wait_timeout 是用在JDBC (我沒有使用java來連接資料庫過,對這塊有點模糊))
後面那個為時間(秒),看要設多久
當設定檔沒有這個參數時,預設 28800 秒 (八小時)的時間會中斷連線 timeout

由於我是用XAMPP來架設mysql,
mysql設定檔:my.ini 在 win10底下的位置是:C:\xampp\mysql\bin\my.ini
(網路上有人是設在my.cnf裡,可是我在XAMPP底下沒找到這個檔案)

要在 [ mysqld ] 這個欄位,在範疇內加入
[mysqld]
wait_timeout = 2
interactive_timeout =  2
(數字代表經過多久沒連接會斷開的秒數,這邊設兩秒)








設好之後 重啟mysql
果然兩秒就斷開連接了^^

之後修改一下、改成自己所需要的數值,
預期程式能夠跑整天~


0

0

LINE 分享

相關創作

認識AI工具的三種等級

閱讀五月天,悅讀每一天【文學星官方活動】

說別人開分身帳號,結果自己也是分身帳號(聳肩

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】