Saya merasa sulit untuk menggunakan MySQL dengan Python di sistem windows saya.
Saya saat ini menggunakan Python 2.6. Saya telah mencoba untuk mengkompilasi kode sumber MySQL-python-1.2.3b1 (yang seharusnya bekerja untuk Python 2.6?) Menggunakan skrip pengaturan yang disediakan. Skrip penyiapan berjalan dan tidak melaporkan kesalahan apa pun tetapi tidak menghasilkan modul _mysql.
Saya juga mencoba menyiapkan MySQL untuk Python 2.5 tanpa keberhasilan. Masalah dengan menggunakan 2.5 adalah Python 2.5 dikompilasi dengan visual studio 2003 (saya menginstalnya menggunakan binari yang disediakan). Saya memiliki visual studio 2005 di sistem windows saya. Karenanya setuptools gagal menghasilkan modul _mysql.
Ada bantuan?
Jawaban:
Halaman unduh untuk python-mysqldb . Halaman ini menyertakan binari untuk versi 32 dan 64 bit untuk Python 2.5, 2.6 dan 2.7.
Ada juga diskusi tentang menghilangkan peringatan penghentian .
UPDATE : Ini adalah jawaban lama. Saat ini, saya akan merekomendasikan penggunaan PyMySQL. Ini python murni, sehingga mendukung semua OS secara merata, ini hampir merupakan pengganti drop-in untuk mysqldb, dan juga berfungsi dengan python 3. Cara terbaik untuk menginstalnya adalah menggunakan pip. Anda dapat menginstalnya dari sini (petunjuk lebih lanjut di sini ), lalu jalankan:
sumber
pip install pymysql
,syncdb
masih ada keluhan tentangMySQLdb
modul yang hilang .Ini mungkin terbaca seperti nasihat kakek Anda, tetapi semua jawaban di sini tidak menyebutkan cara terbaik: pergi dan instal ActivePython daripada binari python.org windows. Saya benar-benar bertanya-tanya untuk waktu yang lama mengapa pengembangan Python di windows seperti pita - sampai saya menginstal python aktif. Saya tidak berafiliasi dengan mereka. Itu hanya kebenaran yang jelas. Tuliskan di setiap dinding: Pengembangan Python di Windows = ActiveState ! Anda kemudian adil
pypm install mysql-python
dan semuanya bekerja dengan lancar. tidak ada pesta kompilasi. tidak ada kesalahan yang aneh. tidak ada teror. Mulailah membuat kode dan melakukan pekerjaan nyata setelah lima menit. Ini adalah satu-satunya cara untuk membuka jendela. Betulkah.sumber
Sebagai pemula Python yang mempelajari ekosistem Python, saya baru saja menyelesaikan ini.
Instal instruksi setuptools
Instal MySQL 5.1. Unduh MSI 97,6MB dari sini Anda tidak dapat menggunakan versi penting karena tidak berisi pustaka C.
Pastikan untuk memilih penginstalan khusus, dan tandai alat / pustaka pengembangan untuk penginstalan karena itu tidak dilakukan secara default. Ini diperlukan untuk mendapatkan file header C.
Anda dapat memverifikasi bahwa Anda telah melakukan ini dengan benar dengan mencari di direktori instalasi Anda untuk folder bernama "include". Misalnya C: \ Program Files \ MySQL \ MySQL Server 5.1 \ include. Ini harus memiliki sejumlah besar file .h.
Instal Microsoft Visual Studio C ++ Express 2008 dari sini Ini diperlukan untuk mendapatkan kompiler C.
Buka baris perintah sebagai administrator (klik kanan pada pintasan Cmd dan kemudian "jalankan sebagai administrator". Pastikan untuk membuka jendela baru setelah Anda menginstal hal-hal itu atau jalur Anda tidak akan diperbarui dan penginstalan akan tetap gagal.
Dari prompt perintah:
easy_install -b C: \ temp \ sometempdir mysql-python
Itu akan gagal - itu OK.
Sekarang buka site.cfg di direktori temp Anda C: \ temp \ sometempdir dan edit pengaturan "registry_key" ke:
registry_key = PERANGKAT LUNAK \ MySQL AB \ MySQL Server 5.1
sekarang CD ke dir suhu Anda dan:
python setup.py bersih
python setup.py install
Anda harus siap untuk bergoyang!
Berikut ini skrip super sederhana untuk memulai mempelajari Python DB API untuk Anda - jika Anda membutuhkannya.
sumber
Saya menemukan lokasi di mana satu orang berhasil membangun mysql untuk python2.6, membagikan tautan, http://www.technicalbard.com/files/MySQL-python-1.2.2.win32-py2.6.exe
... Anda mungkin melihat peringatan saat mengimpor MySQLdb yang baik-baik saja dan tidak akan merugikan apa pun,
C: \ Python26 \ lib \ site-packages \ MySQLdb__init __. Py: 34: DeprecationWarning: modul set sudah tidak digunakan lagi dari set import ImmutableSet
sumber
Bagaimana dengan pymysql ? Ini murni Python, dan saya telah menggunakannya di Windows dengan kesuksesan yang cukup besar, melewati kesulitan dalam mengompilasi dan menginstal mysql-python.
sumber
Anda bukan satu-satunya orang yang mengalami masalah dengan Python 2.6 dan MySQL ( http://blog.contriving.net/2009/03/04/using-python-26-mysql-on-windows-is-nearly-impossible/ ) . Berikut penjelasan bagaimana seharusnya berjalan di bawah Python 2.5 http://i.justrealized.com/2008/04/08/how-to-install-python-and-django-in-windows-vista/ Selamat mencoba
sumber
Ada binari Windows untuk MySQL-Python (2.4 & 2.5) yang tersedia di Sourceforge . Sudahkah kamu mencobanya?
sumber
Binari yang telah dikompilasi sebelumnya di http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python hanya berfungsi untuk saya.
MySQL_python-1.2.5-cp27-none-win_amd64.whl
file dengan program ekstraktor zip.C:\Python27\Lib\site-packages\
sumber
Pada Python 3.4 saya telah menginstal mysqlclient dari http://www.lfd.uci.edu/~gohlke/pythonlibs/ dengan pip install mysqlclient dan berfungsi.
sumber
Anda dapat mencoba menggunakan myPySQL. Sangat mudah digunakan; tidak ada kompilasi untuk windows, dan bahkan jika Anda perlu mengkompilasinya karena alasan apa pun, Anda hanya perlu menginstal Python dan Visual C (bukan mysql).
http://code.google.com/p/mypysql/
Semoga berhasil
sumber
Karena saya menjalankan python di virtualenv (pylons / pyramid), saya tidak dapat menjalankan installer biner (membantu) yang ditautkan sebelumnya.
Saya mengalami masalah dalam mengikuti langkah-langkah dengan jawaban Willie, tetapi saya memutuskan bahwa masalahnya adalah (mungkin) bahwa saya menjalankan instalasi windows 7 x64, yang menempatkan kunci registri untuk mysql di lokasi yang sedikit berbeda, khususnya dalam kasus saya (catatan: Saya saya menjalankan versi 5.5) di: "HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ MySQL AB \ MySQL Server 5.5".
NAMUN, "HKEY_LOCAL_MACHINE \" tidak dapat disertakan dalam jalur atau akan gagal.
Juga, saya harus melakukan restart antara langkah 3 dan 4.
Setelah mengerjakan semua ini, IMO akan lebih pintar menjalankan seluruh lingkungan dev python dari cygwin.
sumber
Jika Anda mencari Python 3.2, ini sepertinya solusi terbaik yang saya temukan sejauh ini
Sumber: http://wiki.python.org/moin/MySQL
sumber
Anda mungkin juga ingin mempertimbangkan untuk menggunakan Cygwin , ia memiliki pustaka python mysql di repositori.
sumber
Anda juga dapat menggunakan pyodbc dengan Konektor MySQL / ODBC untuk menggunakan MySQL di Windows. Unixodbc juga tersedia untuk membuat kode tersebut kompatibel di Linux. Pyodbc menggunakan Python DB API 2.0 standar jadi jika Anda tetap menggunakan pengalihan antara driver MySQL / PostgreSQL / SQLite / ODBC / JDBC, dll. Seharusnya relatif tidak menyakitkan.
sumber
upvoted jawaban itsadok karena itu membawa saya ke instalasi untuk python 2.7 juga, yang terletak di sini: http://www.codegood.com/archives/129
sumber
Muak dengan masalah instalasi dengan MySQLdb dan sebagai gantinya mencoba pymysql .
Pengaturan mudah;
Dan API hampir sama.
sumber