Trudno mi jest używać MySQL z Pythonem w moim systemie Windows.
Obecnie używam Pythona 2.6. Próbowałem skompilować kod źródłowy MySQL-python-1.2.3b1 (który ma działać w Pythonie 2.6?) Przy użyciu dostarczonych skryptów instalacyjnych. Skrypt instalacyjny działa i nie zgłasza żadnego błędu, ale nie generuje modułu _mysql.
Próbowałem również skonfigurować MySQL dla Pythona 2.5 bez powodzenia. Problem z używaniem 2.5 polega na tym, że Python 2.5 jest skompilowany z Visual Studio 2003 (zainstalowałem go przy użyciu dostarczonych plików binarnych). Mam Visual Studio 2005 na moim systemie Windows. Dlatego setuptools nie może wygenerować modułu _mysql.
Jakaś pomoc ?
Odpowiedzi:
Strona pobierania dla python-mysqldb . Strona zawiera pliki binarne dla 32 i 64-bitowych wersji dla Pythona 2.5, 2.6 i 2.7.
Prowadzona jest również dyskusja na temat pozbycia się ostrzeżenia o wycofaniu .
UPDATE : To stara odpowiedź. Obecnie polecam używanie PyMySQL. Jest to czysty Python, więc obsługuje jednakowo wszystkie systemy operacyjne, jest prawie bezpośrednim zamiennikiem mysqldb, a także współpracuje z Pythonem 3. Najlepszym sposobem instalacji jest użycie pip. Możesz go zainstalować stąd (więcej instrukcji tutaj ), a następnie uruchomić:
źródło
pip install pymysql
,syncdb
nadal narzekałem na brakującyMySQLdb
moduł.To może brzmieć tak, jak udzielanie rad przez dziadka, ale wszystkie odpowiedzi tutaj nie wspominały o najlepszym sposobie: idź i zainstaluj ActivePython zamiast plików binarnych systemu Windows python.org. Naprawdę długo się zastanawiałem, dlaczego programowanie Pythona w systemie Windows było taką pitą - dopóki nie zainstalowałem pythona activestate. Nie jestem z nimi powiązany. To po prostu prawda. Napisz to na każdej ścianie: programowanie w Pythonie na Windows = ActiveState ! wtedy po prostu
pypm install mysql-python
i wszystko działa sprawnie. bez kompilacji orgii. żadnych dziwnych błędów. bez terroru. Po pięciu minutach zacznij programować i wykonywać prawdziwą pracę. To jedyny sposób, aby przejść do systemu Windows. Naprawdę.źródło
Jako początkujący Python uczący się ekosystemu Pythona właśnie to ukończyłem.
Zainstaluj instrukcje setuptools
Zainstaluj MySQL 5.1. Pobierz 97,6 MB MSI stąd. Nie możesz używać wersji Essentials, ponieważ nie zawiera ona bibliotek C.
Pamiętaj, aby wybrać instalację niestandardową i oznaczyć narzędzia programistyczne / biblioteki do instalacji, ponieważ nie jest to wykonywane domyślnie. Jest to potrzebne, aby uzyskać pliki nagłówkowe C.
Możesz sprawdzić, czy zrobiłeś to poprawnie, szukając w katalogu instalacyjnym folderu o nazwie „include”. EG C: \ Program Files \ MySQL \ MySQL Server 5.1 \ include. Powinien zawierać całą masę plików .h.
Zainstaluj Microsoft Visual Studio C ++ Express 2008 z tego miejsca Jest to wymagane, aby uzyskać kompilator C.
Otwórz wiersz poleceń jako administrator (kliknij prawym przyciskiem myszy skrót Cmd, a następnie „uruchom jako administrator”. Pamiętaj, aby otworzyć nowe okno po zainstalowaniu tych elementów, w przeciwnym razie ścieżka nie zostanie zaktualizowana, a instalacja nadal się nie powiedzie).
W wierszu polecenia:
easy_install -b C: \ temp \ somempdir mysql-python
To się nie powiedzie - co jest w porządku.
Teraz otwórz site.cfg w katalogu tymczasowym C: \ temp \ somempdir i edytuj ustawienie „register_key” na:
register_key = OPROGRAMOWANIE \ MySQL AB \ MySQL Server 5.1
teraz CD do twojego tymczasowego katalogu i:
python setup.py czysty
python setup.py install
Powinieneś być gotowy na rock!
Oto super prosty skrypt, aby rozpocząć naukę interfejsu API Python DB - jeśli go potrzebujesz.
źródło
Znalazłem lokalizację, w której jedna osoba pomyślnie zbudowała mysql dla python2.6, udostępniając link, http://www.technicalbard.com/files/MySQL-python-1.2.2.win32-py2.6.exe
... możesz zobaczyć ostrzeżenie podczas importowania MySQLdb, co jest w porządku i nic nie zaszkodzi,
C: \ Python26 \ lib \ site-packages \ MySQLdb__init __. Py: 34: DeprecationWarning: moduł sets jest przestarzały z zestawów import ImmutableSet
źródło
A co z pymysql ? To czysty Python i używałem go w systemie Windows ze sporym sukcesem, omijając trudności związane z kompilacją i instalacją mysql-python.
źródło
Nie jesteś jedyną osobą mającą problemy z Pythonem 2.6 i MySQL ( http://blog.contriving.net/2009/03/04/using-python-26-mysql-on-windows-is-nearly-impossible/ ) . Oto wyjaśnienie, jak powinno działać w Pythonie 2.5 http://i.justrealized.com/2008/04/08/how-to-install-python-and-django-in-windows-vista/ Powodzenia
źródło
Istnieją binaria Windows dla MySQL-Python (2.4 i 2.5) dostępne na Sourceforge . Czy próbowałeś tych?
źródło
Prekompilowane pliki binarne na http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python właśnie dla mnie działały.
MySQL_python-1.2.5-cp27-none-win_amd64.whl
plik za pomocą programu do rozpakowywania plików ZIP.C:\Python27\Lib\site-packages\
źródło
W Pythonie 3.4 zainstalowałem mysqlclient z http://www.lfd.uci.edu/~gohlke/pythonlibs/ z pip install mysqlclient i działa.
źródło
Możesz spróbować użyć myPySQL. Jest naprawdę łatwy w użyciu; bez kompilacji dla systemu Windows, a nawet jeśli z jakiegoś powodu musisz go skompilować, potrzebujesz tylko Pythona i Visual C (nie mysql).
http://code.google.com/p/mypysql/
Powodzenia
źródło
Ponieważ używam Pythona w (pylonach / piramidach) virtualenv, nie mogłem uruchomić instalatorów binarnych (pomocnych), do których wcześniej podłączono.
Miałem problemy z wykonaniem czynności z odpowiedzią Williego, ale ustaliłem, że problem polega (prawdopodobnie) na tym, że używam instalacji systemu Windows 7 x64, która umieszcza klucz rejestru dla mysql w nieco innej lokalizacji, szczególnie w moim przypadku (uwaga: ja korzystam z wersji 5.5) w: „HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ MySQL AB \ MySQL Server 5.5”.
JEDNAK „HKEY_LOCAL_MACHINE \” nie może zostać uwzględniony w ścieżce lub zakończy się niepowodzeniem.
Musiałem również wykonać restart między krokami 3 i 4.
Po przepracowaniu tego wszystkiego, IMO byłoby mądrzejsze, gdyby uruchomić całe środowisko programistyczne Pythona z Cygwin.
źródło
Jeśli szukasz Pythona 3.2, to wydaje się być najlepszym rozwiązaniem, jakie do tej pory znalazłem
Źródło: http://wiki.python.org/moin/MySQL
źródło
Możesz również rozważyć użycie Cygwin , ma on biblioteki mysql python w repozytorium.
źródło
Możesz także użyć pyodbc z MySQL Connector / ODBC, aby używać MySQL w systemie Windows. Dostępny jest również Unixodbc, aby kod był kompatybilny z Linuksem. Pyodbc używa standardowego Python DB API 2.0, więc jeśli będziesz się trzymać tego przełączania pomiędzy sterownikami MySQL / PostgreSQL / SQLite / ODBC / JDBC itp. Powinno być stosunkowo bezbolesne.
źródło
zaaprobowałem odpowiedź itsadoka, ponieważ doprowadziła mnie to również do instalacji dla Pythona 2.7, która znajduje się tutaj: http://www.codegood.com/archives/129
źródło
Mam dość problemów z instalacją MySQLdb i zamiast tego wypróbowałem pymysql .
Łatwe ustawienie;
A API są prawie takie same.
źródło