2017-09-25 6 views
1

私たちは、Python 2.7とSQL Server 2012の下で1.5年間稼働しているpymssqlを使ってFlaskアプリケーションを作成しました。アプリケーションを新しいセットのサーバーに移動し、 appを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 ')

コールのうち、問題を引き起こすほど十分です。実行しているすべてのバージョンの特定のバージョンを提供できます。

解決策の1つは、pyodbcに切り替えることですが、何百ものクエリとストアドプロシージャ呼び出しがあります。多くの場合、pyodbcはpymssqlほどきれいに扱えないUUIDを持っています。

私は、プリコンパイルされたホイール(pymssql-2.1.3-cp36-cp36m-win_amd64)を使ってpymssqlをインストールしました.pipは以前のバージョンがなくてもビルドできないからです。

これをデバッグまたは修正するためのアイデアが参考になります。

答えて

1

私たちの答えは、pyodbcに切り替えることでした。いくつかのユーティリティ関数は、ここやそこにいくつかの不具合を伴って多かれ少なかれカットアンドペーストを行いましたが、ここ数年はpymssqlの構築、アップグレード、使用がますます困難になっています。

関連する問題