Django не дружит с MySQL

191
31 августа 2021, 11:30

Все установил, запустил проект, создал бд в MySQL, натсроил пользователья и дал ему права. В сеттингах:

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql',
    'HOST': 'localhost',
    'PORT': '3306',
    'NAME': 'dtest',
    'USER': 'dtestuser',
    'PASSWORD': '1111',
}}

Но Джанго возвращает ошибку при попытке миграции.

django.db.utils.OperationalError: (2059, <NULL>)

Как с этим справиться? вот тут пишут, что нужно изменить настройки MySQL, но я не представляю как? Или проблема в чем-то другом? Как проверить права пользователя бд?

Answer 1

По вашей ссылке в посте указано следующее: change the way of encryption of the new version mysql,because django cant support the new encryption. Возможная у Вас новая версия MySQL? Вот тут описана ваша ошибка и внизу в комментарии есть решение.

Начиная с версии 8.04 MySQL использует caching_sha2_password в качестве плагина аутентификации по умолчанию, где ранее использовался mysql_native_password (что вызывает проблемы совместимости со старыми сервисами, которые ожидают mysql_native_password).

READ ALSO
Вызов процедур из процедуры в Mysql

Вызов процедур из процедуры в Mysql

Пытаюсь создать процедуру, которая вызывает другие процедурыНо при попытке создать появляется ошибка о неправильном синтаксисе

203
PHP сохранить в БД через цикл!

PHP сохранить в БД через цикл!

очень нубовский вопрос, извините за это, но прошу помощи

109
Рандомный вывод некскольких чисел

Рандомный вывод некскольких чисел

как можно вывести несколько РАЗНЫХ чисел?

281