在 Windows 服务器上安装 pymssql
Installing pymssql on Windows server
我需要 运行 Python 使用 pymssql 库来查询 SQL 服务器,我花了一天时间在 Windows.[=16= 上安装和编译东西]
安装pymssql很痛苦,直到我开发了这个程序:
- 安装python
- 更新点数
- 从 http://www.npcglib.org/~stathis/blog/precompiled-openssl/
下载 OpenSSL
- 添加bin文件夹到Path环境变量
- 从 https://github.com/ramiro/freetds/releases
下载 FreeTDS
- 将 lib 文件夹添加到 Path 环境变量
- pip 安装 pymssql
我什至创建了 .exe 包,所以我不必在实时计算机上安装所有这些。它工作正常。可执行文件也可以在其他 Windows 机器上运行。
但是,当我在服务器上尝试时,由于某种原因它不起作用。错误没有意义,我哭了:
WindowsError: [Error -2146893795] Provider DLL failed to initialize correctly
无法通过这样的链接帮助自己:
"Windows Error: provider DLL failed to initialize correctly" on import of cgi module in frozen wxpython app
我在浏览器中打开了数百个选项卡,我想我已经搜索了整个 Internet。
我决定尝试在服务器上安装 Python 和 pymssql,我想避免这种情况,但让我们开始吧。当然,我的挫败感并没有就此结束。安装成功后我仍然无法加载pymssql:
C:\Users\Me>C:\Python27\python.exe
Python 2.7.11 (v2.7.11:6d1b6a68f775, Dec 5 2015, 20:40:30) [MSC v.1500 64 bit (
AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import time
>>> import sys
>>> import pymssql
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: %1 is not a valid Win32 application.
谁能指出我哪里出错了?
在 Windows 上设置 pymssql 版本 2.1.2 及更高版本时,请注意确保:
您下载与您正在使用的 Python 版本(例如 2.7、3.4、3.5 等)相对应的 FreeTDS 和 OpenSSL 版本。
您使用与您正在使用的 Python 相同的 "bitness"(32 位或 64 位)下载 FreeTDS 版本。
将文件夹添加到 Windows PATH
时,您必须
我。指定所需 DLL 文件 所在的文件夹,并且
二。选择与您正在使用的 Python 的 "bitness" 相对应的 OpenSSL 文件夹:bin
用于 32 位,或 bin64
用于 64 位。
更多信息参见相关问题:
"ImportError: DLL load failed" when trying to import pymssql on Windows
我需要 运行 Python 使用 pymssql 库来查询 SQL 服务器,我花了一天时间在 Windows.[=16= 上安装和编译东西]
安装pymssql很痛苦,直到我开发了这个程序:
- 安装python
- 更新点数
- 从 http://www.npcglib.org/~stathis/blog/precompiled-openssl/ 下载 OpenSSL
- 添加bin文件夹到Path环境变量
- 从 https://github.com/ramiro/freetds/releases 下载 FreeTDS
- 将 lib 文件夹添加到 Path 环境变量
- pip 安装 pymssql
我什至创建了 .exe 包,所以我不必在实时计算机上安装所有这些。它工作正常。可执行文件也可以在其他 Windows 机器上运行。
但是,当我在服务器上尝试时,由于某种原因它不起作用。错误没有意义,我哭了:
WindowsError: [Error -2146893795] Provider DLL failed to initialize correctly
无法通过这样的链接帮助自己:
"Windows Error: provider DLL failed to initialize correctly" on import of cgi module in frozen wxpython app
我在浏览器中打开了数百个选项卡,我想我已经搜索了整个 Internet。
我决定尝试在服务器上安装 Python 和 pymssql,我想避免这种情况,但让我们开始吧。当然,我的挫败感并没有就此结束。安装成功后我仍然无法加载pymssql:
C:\Users\Me>C:\Python27\python.exe
Python 2.7.11 (v2.7.11:6d1b6a68f775, Dec 5 2015, 20:40:30) [MSC v.1500 64 bit (
AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import time
>>> import sys
>>> import pymssql
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: %1 is not a valid Win32 application.
谁能指出我哪里出错了?
在 Windows 上设置 pymssql 版本 2.1.2 及更高版本时,请注意确保:
您下载与您正在使用的 Python 版本(例如 2.7、3.4、3.5 等)相对应的 FreeTDS 和 OpenSSL 版本。
您使用与您正在使用的 Python 相同的 "bitness"(32 位或 64 位)下载 FreeTDS 版本。
将文件夹添加到 Windows
PATH
时,您必须我。指定所需 DLL 文件 所在的文件夹,并且
二。选择与您正在使用的 Python 的 "bitness" 相对应的 OpenSSL 文件夹:
bin
用于 32 位,或bin64
用于 64 位。
更多信息参见相关问题:
"ImportError: DLL load failed" when trying to import pymssql on Windows