Подтвердить что ты не робот

ImportError: Нет модуля с именем 'MySQL'

Я успешно загрузил Connector/Python для MySQL. Я использовал следующий код в оболочке Python для проверки моего соединения:

import mysql.connector

Я получил следующее сообщение об ошибке:

Traceback (most recent call last):
  File "<pyshell#8>", line 1, in <module>
    import mysql.connector
ImportError: No module named 'mysql'

Я не могу понять, почему MySQL не распознается.

4b9b3361

Ответ 1

Я столкнулся с подобной проблемой. Мои подробности env - Python 2.7.11 пункт 9.0.1 Версия CentOS 5.11 (Final)

Ошибка в интерпретаторе python -

>>> import mysql.connector
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named mysql.connector
>>>

Использовать pip для поиска доступного модуля -

$ pip search mysql-connector | grep --color mysql-connector-python



mysql-connector-python-rf (2.2.2)        - MySQL driver written in Python
mysql-connector-python (2.0.4)           - MySQL driver written in Python

Установите mysql-connector-python-rf -

$ pip install mysql-connector-python-rf

Проверка

$ python
Python 2.7.11 (default, Apr 26 2016, 13:18:56)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>>

Спасибо =)

Ответ 2

Может быть просто установить из Cli?

pip install mysql-connector-python-rf

Имя пакета отличается от имени библиотеки импорта

Или мой универсальный вариант в коде:

import pip
pip.main(['install','mysql-connector-python-rf'])

Для новой версии pip:

from pip._internal import main
main(['install','mysql-connector-python-rf'])

Лучше - установите необходимые модули при установке Python (если их много)

Ответ 3

Используйте pip3 install mysql-connector для установки pip3 install mysql-connector Python (если вы используете Python 3. Для Python 2 вы можете использовать pip).

Ответ 4

Глупая ошибка, которую я совершил, заключалась в том, чтобы держать mysql.py в том же mysql.py. Попробуйте переименовать mysql.py в другое имя, чтобы python не рассматривал это как модуль.

Ответ 5

Попробуйте этот бутон

sudo wget http://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz

gunzip mysql-connector-python-2.1.3.tar.gz

tar xf mysql-connector-python-2.1.3.tar

cd mysql-connector-python-2.1.3

sudo python3 setup.py install

Ответ 6

просто примечание, я только что установил mysql на сервере ubuntu 16.04. Я пробовал разные варианты в следующем порядке:

  • с использованием пакета из репозитория sudo apt-get install python-mysqldb: был установлен правильно, но, к сожалению, python возвращен ImportError: No module named 'mysql'
  • с помощью пакета ubuntu от Mysql: wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python_2.1.4-1ubuntu16.04_all.deb. Устанавливается правильно с помощью sudo dpckg -i package_name, но python возвращает ту же ошибку.
  • с использованием файла tar.gz, установка с помощью python, работала нормально.
    • wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python-2.1.6.tar.gz (в то время использовался 2.1.4)
    • tar -xf mysql-connector-python-2.1.6.tar.gz
    • cd mysql-connector-python-2.1.6/
    • sudo python3 setup.py install

Не исследовал, почему первые два отказались, может попробовать позже. Надеюсь, это поможет кому-то.

Ответ 7

Я обнаружил, что решение @gdxn96 работает для меня, но с 1 изменением.

sudo wget http://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz
tar -zxvf mysql-connector-python-2.1.3.tar
cd mysql-connector-python-2.1.3
sudo python3 setup.py install

Ответ 8

Вам нужно использовать одну из следующих команд. Какой из них зависит от разных ОС и программного обеспечения, которое вы используете и используете.

sudo easy_install mysql-python (mix os)
sudo pip install mysql-python (mix os)
sudo apt-get install python-mysqldb (Linux Ubuntu, ...)
cd /usr/ports/databases/py-MySQLdb && make install clean (FreeBSD)
yum install MySQL-python (Linux Fedora, CentOS ...)

Ответ 9

Я только что переместил connector исходной папки из папки mysql в site-packages. И запустить import connector

Ответ 10

Просто проверьте, установлен ли на вашем компьютере комплект коннекторов MySQL.

Ответ 11

Я нашел другую причину: если путь к вашей программе содержит пробел или специальные символы, вы получите эту ошибку.

Ответ 12

У меня была та же проблема, но я подумал, что установил правильный модуль "mysql" с помощью "pip install mysql". Мне показалось, что сообщение об ошибке гласит: "Нет модуля с именем" mysql "".

Однако я использовал ответ @Rishi, чтобы установить "mysql-connector", и он работает.

Предположим, что оба являются модулями, но в этом случае сообщение об ошибке вводит в заблуждение. Я новичок в Python, так что все еще нахожу свой путь вокруг :)

Ответ 13

Эта проблема была чумой для меня !!! 100% решение состоит в том, чтобы забыть об использовании модуля mysql: import mysql.connector, вместо этого используйте pymysql через import pymysql. Я установил его по инструкции: python3 -m pip install PyMySQL

внес изменения в: 1. Импорт заявления 2. Разъем 3. Курсор

После этого все заработало как шарм. Надеюсь это поможет!

Ответ 14

Попробуйте импортировать модуль в соответствующие пакеты сайтов. У меня была такая же ошибка, которая позже работала при правильном импорте.

Ответ 15

Вам нужно использовать anaconda для управления зависимостями среды Python. Коннектор MySQL можно установить с помощью установщика conda

conda install -c anaconda mysql-connector-python