Python 3.4.0 с базой данных MySQL

Я установил версию Python 3.4.0, и я хотел бы сделать проект с базой данных MySQL. Я загрузил и попытался установить MySQLdb, но это не удалось для этой версии Python. Любые предложения, как я могу исправить эту проблему и правильно установить ее?

Ответ 1

MySQLdb не поддерживает Python 3, но это не единственный драйвер MySQL для Python.

mysqlclient - это просто вилка MySQLdb с поддержкой поддержки Python 3 (и несколько других улучшений).

PyMySQL - это чистый драйвер MySQL python, что означает, что он медленнее, но для него не требуется скомпилированный компонент C или библиотеки MySQL и файлы заголовков, которые будут установлены на клиентских компьютерах. Он поддерживает Python 3.

Другой вариант - просто использовать другую систему баз данных, например PostgreSQL.

Ответ 2

Используйте mysql-connector-python. Я предпочитаю установить его с помощью pip из PyPI:

pip install --allow-external mysql-connector-python mysql-connector-python

Посмотрите на документацию и examples.

Если вы собираетесь использовать пул, убедитесь, что в вашей базе данных достаточно соединений поскольку настройки по умолчанию могут быть недостаточными.

Ответ 3

Установить pip:

apt-get install pip

Для acess MySQL из Python установите:

pip3 install mysqlclient

Ответ 4

Существует решение Ubuntu, доступное либо через программный центр Ubuntu, либо через диспетчер пакетов Synaptic. Это приведет к подключению Python версии 3.4.0 к MySQL. Загрузите версию python3-mysql.connector версии 1.1.6-1.

Обратите внимание, что синтаксис соединения не не использует MySQLdb. Вместо этого прочитайте: Подключение к MySQL с помощью коннектора/Python

Ответ 5

Я решил это так: скачать zipped пакет из здесь и следовать этому набору инструкций:

unzip  /path/to/downloads/folder/mysql-connector-python-VER.zip  

В случае, если u получил значение .gz, вы можете использовать →

tar xzf mysql-connector-python-VER.tar.gz 

И затем:

cd mysql-connector-python-VER  # move into the directory

sudo python3 setup.py install # NOTICE I USED PYTHON3 INSTEAD OF PYTHON

Вы можете прочитать об этом здесь

Ответ 6

Похоже, что на данный момент Ubuntu 15.10 имеет, но с python3 и pip3.

Как описано в в этой статье.

Проблема заключается в том, что pip3 устанавливается на python3.5, в то время как python3 фактически запускает python3.4: (

До тех пор, пока правильное решение не будет доступно через обновления, вы можете сделать одно из следующих действий:

бег

python3 -m pip install pymysql

вместо

pip3 install pymysql

(или любой другой пакет)

Теперь

import pymysql

должен работать в python3 и в idle3.

В качестве альтернативы, если вам явно требуется 3.5, вы можете использовать явный python3.5 вместо python3. но idle3 будет по-прежнему указывать на 3.4...

Ответ 8

В качестве альтернативы вы можете использовать mysqlclient или oursql. Для oursql используйте серию oursql py3k, на которую указывает моя ссылка.

Ответ 9

Возможно, вы можете использовать работу и попробовать что-то вроде:

import datetime
#import mysql
import MySQLdb
conn = MySQLdb.connect(host = '127.0.0.1',user = 'someUser', passwd = 'foobar',db = 'foobardb')
cursor = conn.cursor()

Ответ 10

sudo apt-get install python3-dev
sudo apt-get install libmysqlclient-dev
sudo apt-get install zlib1g-dev
sudo pip3 install mysqlclient

который работал у меня!