Мне нужно запустить Python с библиотекой pymssql для запроса SQL-сервера, и я потратил день на установку и компиляцию файлов в Windows.Установка pymssql на сервер Windows
Установка pymssql был очень болезненным, пока я разработал эту процедуру:
- установки питона
- обновление пип
- загрузить OpenSSL из http://www.npcglib.org/~stathis/blog/precompiled-openssl/
- добавить папку бен к переменной окружения Path
- загрузить FreeTDS от https://github.com/ramiro/freetds/releases
- добавить папку lib в Path enviro nment переменная
- пип установить pymssql
Я даже создал EXE-пакет, поэтому я не придется устанавливать все это на живой машине. Он работал нормально. Executable также работал на другой машине Windows.
Но, когда я попробовал его на сервере, он почему-то не работал. Ошибка не имеет смысла, и я начал плакать:
WindowsError: [Error -2146893795] Provider DLL failed to initialize correctly
не могли бы помочь мне со ссылками, как это:
У меня есть сотни вкладок открыто в браузере и I думаю, что я искал весь Интернет.
Я решил попробовать установить 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.
Может ли кто-нибудь указать, где я поступил не так?
ли pymssql скомпилированного 64 бита? – theB
Ваш баннер Python показывает, что он 64-битный, поэтому вы включили папку OpenBSL 'bin64' (а не' bin') на свой PATH, верно? –
Попробуйте захватить 64-битный openssl. Я использовал этот сайт для своих установок. https://slproweb.com/products/Win32OpenSSL.html –