Python имя '_mysql' не определено
Я создаю виртуальную среду с python 3.7.10, установив mysql и mysqlclient. Это mysql 8.0.28, mysqlclient 2.1.0.
При запуске python manage.py migrate получается следующее:
Когда я пытаюсь переустановить его, он говорит, что уже установлен. Я думаю, что python не может найти путь к mysql. Я просмотрел много вопросов, но не смог решить свою проблему. С тех пор как я впервые запустил python, я не могу найти причину.
Заранее спасибо за помощь.
С чего начать поиск проблемы?
Я нашел проблему, аналогичную вашей, в этом вопросе:
Может быть, вы можете начать с этого.
Пару дней назад у меня была такая же проблема. Убедитесь, что mysqlclient установлен, а затем установите pip install PyMySQL, Теперь используйте следующие строки кода в settings.py:
#в settings.py
import pymysql
pymysql.install_as_MySQLdb()
это работает для меня.
Это происходит потому, что версия библиотеки mysql C (_mysql*.so) в MySQLdb не совместима с версией Python. Активируем виртуальную среду и пробуем следующее:
pip uninstall mysqlclient
pip install mysqlclient --no-cache-dir