花了数小时找到正确的连接器以将MySQL与Django连接之后,我无法创建超级用户。错误:
django.db.utils.OperationalError: (2059, "Authentication plugin 'caching_sha2_password'
cannot be loaded: The specified module could not be found.\r\n")
我尝试设置环境变量settings.configure()
,该变量表示设置已配置。数据库信息全部正确输入settings.py中。
Pycharm能够连接到db,这是在我的django项目中,并且pycharm中的db标题表示Django默认。我不知道这是否意味着我的Django项目已连接到该项目,但我无法创建超级用户或pycharm连接不相关。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'dbname',
'USER': 'root',
'PASSWORD': '',
'HOST': 'localhost',
'PORT': 3306
}
}
当我尝试django-admin dbshell
时出现此错误:
django.core.exceptions.ImproperlyConfigured: Requested setting DATABASES, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
错误中提供的两种解决方案都没有肯定的结果。
编辑:另一篇文章中的解决方案没有帮助。运行django-admin dbshell时,我得到了完全相同的错误。创建超级用户时,我现在收到以下错误:django.db.utils.ProgrammingError: (1146, "Table 'DBname.auth_user' doesn't exist")
此外,使用较旧的密码安全性似乎不是一个好主意。