Як я можу встановити модуль MySQLdb для Python за допомогою pip?
Як я можу встановити модуль MySQLdb для Python за допомогою pip?
Відповіді:
Це легко зробити, але важко запам'ятати правильний написання:
pip install mysqlclient
Якщо вам потрібні версії 1.2.x (лише застарілий Python), використовуйте pip install MySQL-python
Примітка. Деякі залежності, можливо, повинні бути встановлені під час виконання вищевказаної команди. Деякі підказки щодо того, як їх встановити на різних платформах:
sudo apt-get install python-pip python-dev libmysqlclient-dev
sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc
brew install mysql-connector-c
якщо це не вдається, спробуйте
brew install mysql
pip search mysql
та знаходити те, що вам потрібно у висновку.
pip search mysqldb
цього не знайшов. Таким чином, я поставив +1 цій відповіді.
Починаючи з нової системи Ubuntu 14.04.2, ці дві команди були потрібні:
apt-get install python-dev libmysqlclient-dev
pip install MySQL-python
Просто зробити "встановлення піп" самостійно не вийшло.
З http://codeinthehole.com/writing/how-to-set-up-mysql-for-python-on-ubuntu/
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
використанняsudo apt-get install build-essential
Спочатку
pip install pymysql
Потім введіть код нижче в __init__.py
( projectname/__init__.py
)
import pymysql
pymysql.install_as_MySQLdb()
Моє середовище (python3.5, django1.10), і це рішення працює для мене!
Сподіваюся, це допомагає !!
У мене виникли проблеми з встановленням 64-розрядної версії MySQLdb у Windows через Pip (проблема зі збиранням джерел) [32-бітна версія встановлена нормально]. Вдалося встановити скомпільований MySQLdb з .whl-файлу, доступного на веб-сайті http://www.lfd.uci.edu/~gohlke/pythonlibs/
Файл .whl може бути встановлений через pip як документ на https://pip.pypa.io/en/latest/user_guide/#installing-from-wheels
Наприклад, якщо ви зберігаєте в C:/
програмі, яку ви можете встановити через
pip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
Наступні дії: якщо у вас встановлена 64-бітна версія Python, ви хочете встановити 64-бітну версію AMD MySQLdb за посиланням вище [тобто навіть якщо у вас процесор Intel]. Якщо ви замість цього спробуйте встановити 32-бітну версію, я думаю, що ви отримаєте непідтримувану помилку колеса в коментарях нижче.
pip install mysqlclient-1.3.7-cp27-none-win_amd64.whl
працює чудово.
whl
файлу (я мав би 64 біт, щоб він відповідав моїй 64-бітній установці Python). Зберегли файл у c:/
каталог та запустили. pip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
Він встановився за лічені секунди і було добре піти. Надто легко!
добре це працювало для мене:
pip install mysqlclient
це для python 3.x
Я спробував увесь варіант, але не зміг змусити його працювати на платформі Redhat. Я зробив наступне, щоб він працював: -
yum install MySQL-python -y
Після встановлення пакета вдалося імпортувати модуль у інтерпретаторі наступним чином:
>>> import MySQLdb
>>>
pip
. Який дистрибутив ви використовуєте? На Fedora 24, це працює , щоб встановити модуль через піп: sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc
,sudo pip install MySQL-python
Перейдіть до pycharm, потім перейдіть до налаштування за замовчуванням -> pip (подвійне клацання) - pymsqldb ..--> встановити - після встановлення використовувати в такій програмі
import pymysql as MySQLdb
# Open database connection
db = MySQLdb.connect("localhost","root","root","test" )
# prepare a cursor object using cursor() method
cursor = db.cursor()
# execute SQL query using execute() method.
cursor.execute("show tables")
# Fetch a single row using fetchone() method.
data = cursor.fetchall()
print (data)
# disconnect from server
db.close()
Якщо ви використовуєте Raspberry Pi [Raspbian OS]
Потрібно спочатку встановити команду pip
apt-get install python-pip
Так що просто встановити Послідовно
apt-get install python-dev libmysqlclient-dev
apt-get install python-pip
pip install MySQL-python
Якщо ви не можете встановити mysqlclient, ви також можете встановити pymysql :
pip install pymysql
Це працює так само, як MySqldb . Після цього використовуйте pymysql всюди замість MySQLdb
У мене була така ж проблема. Виконайте ці дії, якщо ви працюєте в Windows. Перейдіть до: 1.Мой комп’ютер 2.Властивості системи 3.Разширення системних налаштувань 4. На вкладці "Додатково" натисніть кнопку з написом "Змінні середовища" 5. Потім у розділі Системні змінні вам потрібно додати / змінити такі змінні: PYTHONPATH і Шлях. Ось вставка того, як виглядають мої змінні: python path:
C:\Python27;C:\Python27\Lib\site-packages;C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;C:\Python27\Scripts
шлях:
C:\Program Files\MySQL\MySQL Utilities 1.3.5\;C:\Python27;C:\Python27\Lib\site-packages;C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;C:\Python27\Scripts
Дивіться це посилання для довідок
Вищеназвана відповідь чудова, але можуть бути деякі проблеми, коли ми використовуємо pip для установки MySQL-python у Windows
наприклад, йому потрібні деякі файли, пов’язані з Visual Stdio рішення встановлює VS2008 або 2010 …… Очевидно, що це коштувало занадто дорого.
Інший спосіб - відповідь @ bob90937. Я тут, щоб зробити щось додати.
за допомогою http://www.lfd.uci.edu/~gohlke/pythonlibs , ви можете завантажити багато бінарних файлів Windows багатьох наукових пакетів розширень з відкритим кодом для офіційного розподілу CPython мови програмування Python.
Повертаючись до теми, ми можемо вибрати MySQL-python (py2) або Mysqlclient (py3) і використовувати для встановлення pip . це дає нам велику зручність!
Для Python3 мені потрібно було зробити це:
python3 -m pip install MySQL
pip install mysql-connector-python
як зазначено в документації:
https://dev.mysql.com/doc/connector-python/en/connector-python-installation-binary.html
на RHEL 7:
sudo yum install yum-utils mariadb-devel python-pip python-devel gcc
sudo /bin/pip2 install MySQL-python
Якщо у вас в системі встановлена Windows, тоді введіть таку команду на cmd:
pip install mysql-connector
якщо вищевказана команда не працює, спробуйте скористатися:
pip install mysql-connector-python
Тепер, якщо вищезазначені команди не виконали роботу, спробуйте скористатися:
pip install mysql-connector-python-rf
Ось це вам добре зараз піти.
Якщо pip3 не працює, ви можете спробувати:
sudo apt install python3-mysqldb
Моє середовище:
pip встановити mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl
працює для мене.
import MySQLdb, sys
# --------------------------------------------------
# Connect to MySQL
# --------------------------------------------------
try:
db = MySQLdb.connect(host="localhost", user="user", passwd="pass", db="database", charset='cp1251')
except MySQLdb.Error as e:
print ("Error %d: %s" % (e.args[0], e.args[1]))
sys.exit()
# Creating cursor
cursor = db.cursor()
насправді слідкуйте за відповіддю @Nick T для мене не працює, я намагаюся apt-get install python-mysqldb
працювати для мене
root@2fb0da64a933:/home/test_scrapy# apt-get install python-mysqldb
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libmariadbclient18 mysql-common
Suggested packages:
default-mysql-server | virtual-mysql-server python-egenix-mxdatetime python-mysqldb-dbg
The following NEW packages will be installed:
libmariadbclient18 mysql-common python-mysqldb
0 upgraded, 3 newly installed, 0 to remove and 29 not upgraded.
Need to get 843 kB of archives.
After this operation, 4611 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://deb.debian.org/debian stretch/main amd64 mysql-common all 5.8+1.0.2 [5608 B]
Get:2 http://deb.debian.org/debian stretch/main amd64 libmariadbclient18 amd64 10.1.38-0+deb9u1 [785 kB]
Get:3 http://deb.debian.org/debian stretch/main amd64 python-mysqldb amd64 1.3.7-1.1 [52.1 kB]
Fetched 843 kB in 23s (35.8 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package mysql-common.
(Reading database ... 13223 files and directories currently installed.)
Preparing to unpack .../mysql-common_5.8+1.0.2_all.deb ...
Unpacking mysql-common (5.8+1.0.2) ...
Selecting previously unselected package libmariadbclient18:amd64.
Preparing to unpack .../libmariadbclient18_10.1.38-0+deb9u1_amd64.deb ...
Unpacking libmariadbclient18:amd64 (10.1.38-0+deb9u1) ...
Selecting previously unselected package python-mysqldb.
Preparing to unpack .../python-mysqldb_1.3.7-1.1_amd64.deb ...
Unpacking python-mysqldb (1.3.7-1.1) ...
Setting up mysql-common (5.8+1.0.2) ...
update-alternatives: using /etc/mysql/my.cnf.fallback to provide /etc/mysql/my.cnf (my.cnf) in auto mode
Setting up libmariadbclient18:amd64 (10.1.38-0+deb9u1) ...
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Setting up python-mysqldb (1.3.7-1.1) ...
root@2fb0da64a933:/home/test_scrapy# python
Python 2.7.13 (default, Nov 24 2017, 17:33:09)
[GCC 6.3.0 20170516] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>>