我們已經有一個使用pymssql的Flask應用程序,它在Python 2.7和SQL Server 2012下運行了1.5年。我們將應用程序移動到一組新服務器並升級了Flask應用程序到Python 3.6和新的數據庫服務器到SQL Server 2016.他們都是Windows服務器。升級到Python 3.6和SQL Server 2016後Pymssql錯誤20017
從那時起,我們已經得到間歇20017個錯誤:
pymssql.OperationalError(20017,b'DB-Lib的錯誤信息20017,嚴重性9:\從服務器nUnexpected EOF(xx.xx.xx .xx:1433)\ nDB-Lib錯誤消息20002,嚴重性9:\ n自適應服務器連接失敗(xx.xx.xx.xx:1433)\ n')
只有一小部分調用返回此值,但足以造成問題。我可以提供我們正在運行的所有內容的特定版本。
提出的一種解決方案是切換到pyodbc,但我們有數百個查詢和存儲過程調用,其中許多使用UUID,pyodbc幾乎不像pymssql那樣乾淨。
我已經通過預編譯輪安裝了pymssql(pymssql-2.1.3-cp36-cp36m-win_amd64),因爲pip無法在沒有舊版本的情況下構建它。
有關調試或修復此問題的任何想法都會有所幫助。