' caching_sha2_password' Windows

时间:2018-05-18 17:19:39

标签: python mysql django windows web

我目前正在尝试使用Python的Django框架创建一个Web应用程序,同时通过MySQL创建数据库。我正在运行Windows 10,Django 2,Python3.6和MySQL 8.我尝试了很多修复但似乎没有任何工作。当我尝试运行测试用例或在本地运行服务器时,我收到同样的错误:django.db.utils.OperationalError:(2059,"身份验证插件' caching_sha2_password'无法加载:指定无法找到模块。\ r \ n")

先谢谢!

2 个答案:

答案 0 :(得分:0)

MySQL 8版本会出现此问题, 使用MySQL 5.7或使用https://dev.mysql.com/downloads/connector/python/中的官方驱动程序,而不是使用django https://docs.djangoproject.com/en/2.0/ref/databases/#mysql-db-api-drivers站点的MySQL API驱动程序。

答案 1 :(得分:0)

您可以使用以下命令运行MySql(> = 8.0)容器作为要执行的命令(实际上,作为entrypoint.sh的参数):

--default-authentication-plugin=mysql_native_password

例如,

docker run --rm -d -e MYSQL_DATABASE=test -e MYSQL_ROOT_PASSWORD=password mysql/mysql-server:latest --default-authentication-plugin=mysql_native_password

(找到了解决方法here。)