参考资料
stackflow帖子:https://stackoverflow.com/questions/39281594/error-1698-28000-access-denied-for-user-rootlocalhost
问题描述
报错:
"Access denied for user 'root'@'localhost'"
数据库拒绝root用户的连接
情况描述
settings.py中关于数据库的配置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mysite3',
'USER': 'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': '3306'
}
}
可以看到root用户的密码为123456
但是在mysql数据库里面查看用户信息,root的密码为空
这样的不匹配导致连接失败文章来源:https://www.toymoban.com/news/detail-828417.html
解决方案
step1:管理员权限进入mysql,重置root密码
sudo mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
step2:重启mysql服务器
sudo service mysql stop
sudo service mysql start
之前尝试过重置密码,但是没有效果,实际上是需要重启服务器才能生效文章来源地址https://www.toymoban.com/news/detail-828417.html
到了这里,关于Django后端开发——mysql数据库连接遇到的问题及解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!