django连接mysql数据库失败

更新时间:02-05 教程 由 凉月 分享

最近在使用Django的时候遇到了一个问题,就是连接MySQL数据库失败。

我尝试通过设置settings.py中的DATABASES参数来连接数据库:

DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'mydatabase','USER': 'mydatabaseuser','PASSWORD': 'mypassword','HOST': 'localhost','PORT': '3306',}}

但是,当我试着运行Django时,却发现无法连接到数据库。

我决定检查一下设置是否正确,于是我使用Django shell连接数据库:

python manage.py shell>>> from django.db import connection>>> connection.connect()

结果,我得到了下面的错误信息:

django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on 'localhost' ([Errno 111] Connection refused)")

我认为可能是MySQL服务器没有启动,于是我使用以下命令来检查:

sudo systemctl status mysql.service

但是,MySQL服务器已经运行了。

之后,我决定尝试连接远程MySQL服务器,但是仍然无法连接。

最后,我通过查看MySQL日志发现,MySQL服务器默认监听127.0.0.1而不是localhost,在settings.py中将HOST设置为'127.0.0.1'后,问题得以解决。

总结一下,要想连接MySQL数据库成功,需要设置正确的DATABASES参数和注意HOST参数的设置。

声明:关于《django连接mysql数据库失败》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2075004.html