• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Benjamin

            靜以修身,儉以養(yǎng)德,非澹薄無以明志,非寧靜無以致遠(yuǎn)。
            隨筆 - 397, 文章 - 0, 評(píng)論 - 196, 引用 - 0
            數(shù)據(jù)加載中……

            MySQLdb._exceptions.OperationalError: (2006, 'MySQL server has gone away')解決方法

            一、查詢mysql的show variables like “%timeout%”;interactive_timeout服務(wù)器關(guān)閉交互式連接前等待活動(dòng)的秒數(shù) 參數(shù)默認(rèn)值:28800秒(8小時(shí))
            在配置文件my.cnf中只設(shè)置參數(shù)interactive_timeout=100或者設(shè)置一個(gè)比較大的值,則重啟服務(wù)器后進(jìn)入或者set global interactive_timeout=28800;重啟mysql服務(wù)器
            注:
            從文檔上來看wait_timeout和interactive_timeout都是指不活躍的連接超時(shí)時(shí)間,連接線程啟動(dòng)的時(shí)候wait_timeout會(huì)根據(jù)是交互模式還是非交互模式被設(shè)置為這兩個(gè)值中的一個(gè)。
            如果我們運(yùn)行mysql -uroot -p命令登陸到mysql,wait_timeout就會(huì)被設(shè)置為interactive_timeout的值。如果我們?cè)趙ait_timeout時(shí)間內(nèi)沒有進(jìn)行任何操作,那么再次操作的時(shí)候就會(huì)提示超時(shí),這是mysql client會(huì)重新連接。
            interactive_timeout和wait_timeout在連接空閑階段(sleep)起作用,對(duì)于保持sleep狀態(tài)超過了wait_timeout(或interactive_timeout,取決于CLIENT_INTERACTIVE標(biāo)志)的客戶端,MySQL會(huì)主動(dòng)斷開連接。
            可以用set命令或在my.cnf文件中設(shè)置,設(shè)置后需要重啟數(shù)據(jù)庫
            二、conn = None
            def _conn():  # 連接帶異常處理
                try:
                    global conn
                    conn = MySQLdb.connect(host="localhost", user="root", passwd="123456", db="xhaccount", port=3306,
                                           charset="utf8")  # 連接對(duì)象
                    return True
                except Exception as e:
                    print("str(Exception):\t", str(e))
                    print("str(e):\t\t", str(e))
                    print("repr(e):\t", repr(e))
                    # Get information about the exception that is currently being handled
                    exc_type, exc_value, exc_traceback = sys.exc_info()
                    print('e.message:\t', exc_value)
                    print("Note, object e and exc of Class %s is %s the same." %
                          (type(exc_value), ('not', '')[exc_value is e]))
                    print('traceback.print_exc(): ', traceback.print_exc())
                    return False
            def _reConn():  # 重試連接
                try:
                    conn.ping()  # 校驗(yàn)連接是否異常
                except Exception as e:
                    if _conn() is True:  # 重新連接,成功退出
                        return
                    print("str(Exception):\t", str(e))
                    print("str(e):\t\t", str(e))
                    print("repr(e):\t", repr(e))
                    # Get information about the exception that is currently being handled
                    exc_type, exc_value, exc_traceback = sys.exc_info()
                    print('e.message:\t', exc_value)
                    print("Note, object e and exc of Class %s is %s the same." %
                          (type(exc_value), ('not', '')[exc_value is e]))
                    print('traceback.print_exc(): ', traceback.print_exc())
                    print('重連失?。。。。。。。?)
            每次執(zhí)行sql語句的時(shí)候,調(diào)用下_reConn()

            posted on 2020-12-30 09:44 Benjamin 閱讀(2416) 評(píng)論(0)  編輯 收藏 引用 所屬分類: python

            久久精品国产2020| 国产午夜久久影院| 亚洲中文字幕无码久久综合网| 久久99久久99精品免视看动漫 | 国产激情久久久久影院老熟女| 久久午夜综合久久| 91精品国产91久久综合| 亚洲国产精品无码久久青草| 国内精品久久久久久99| 久久青青国产| 97超级碰碰碰碰久久久久| 国产精品久久久久久五月尺| 99久久国产综合精品成人影院 | 国产成人久久精品区一区二区| 人妻少妇精品久久| 91精品免费久久久久久久久| 亚洲精品乱码久久久久66| 国产综合成人久久大片91| 色综合久久无码五十路人妻| 色欲综合久久躁天天躁| 2020最新久久久视精品爱 | 久久久久久狠狠丁香| 久久久久亚洲AV片无码下载蜜桃| 精品久久久久久国产三级| 国产V亚洲V天堂无码久久久| 久久亚洲精品无码VA大香大香| 久久激情亚洲精品无码?V| 天天爽天天爽天天片a久久网| 久久精品国产亚洲av水果派 | 狠狠色丁香婷综合久久| 亚洲午夜无码久久久久| 久久人妻AV中文字幕| 久久精品免费全国观看国产| 欧美久久久久久精选9999| 很黄很污的网站久久mimi色| 88久久精品无码一区二区毛片 | 久久精品日日躁夜夜躁欧美| 欧美成a人片免费看久久| 青青热久久国产久精品| 久久久久久久综合日本| 无码乱码观看精品久久|