#mysql #flask-sqlalchemy
#mysql #flask-sqlalchemy
Вопрос:
Я подключаюсь к базе данных MySQL (8.0) с помощью Flask, вот ошибка:
Authentication plugin 'caching_sha2_password' is not supported
Я создал базу данных ‘user’ с помощью этой команды sql:
ALTER USER 'my_user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
flush privileges;
quit;
Однако я продолжаю получать ту же ошибку. Как я могу решить эту проблему?
Я подозреваю, что устаревший плагин больше не может использоваться, поскольку я пытался включить его в my.cnf
файл, и сервер MySQL не удалось запустить после перезапуска.
Комментарии:
1. нет, это работает по-прежнему, и в вашем коде нет ошибок, поэтому, пожалуйста, отправьте точное и полное сообщение об ошибке
2. @nbk Точный вывод ошибки:
sqlalchemy.exc.NotSupportedError: (mysql.connector.errors.NotSupportedError) Authentication plugin 'caching_sha2_password' is not supported (Background on this error at: http://sqlalche.me/e/13/tw8g)
3. Пожалуйста, прекратите использовать и публиковать «сбросьте привилегии» с помощью ALTER USER или SET PASSWORD или любого стандартного изменения пользователя, оно не требуется.
Ответ №1:
Использование этого uri помогло в моем случае:
'mysql mysqlconnector://user:password@localhost/db?auth_plugin=mysql_native_password'