这是我第一次使用MySQL而不是SQLite3部署网站,所以我对此非常陌生,在阅读了一些文档之后我发现我必须更改一些这样的文件:
settings.朋友
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'my_site_db',
'USER': 'username',
'PASSWORD': 'password',
'HOST': '?', #currently using pythonanywhere (not on localhost)
'PORT': '?',
}
}
manage.朋友
try:
import pymysql
pymysql.install_as_MySQLdb()
except:
pass
(PyMySQL == 0.7.10,Django 1.9,Python 3.5)
当我使用python manage.py migrate
运行Bash控制台时,我收到以下错误消息:
django.db.utils.OperationalError:(2003,“无法连接到'localhost'上的MySQL服务器([Errno 111]拒绝连接)”)
我认为它与数据库配置中的HOST
和PORT
有关,我不知道我应该在这些中添加什么,它与MySQL,PythonAnywhere甚至我自己的域有关吗?如何解决此问题并使用Django 3.5正确设置MySQL?
检查this指南。我用它来部署我的webapp。
你可以这样使用
用户名:johndoe
数据库名称:socialdatabase
主持人:xyz.mysql.pythonanywhere-services.com
网友:johndoe
姓名:john doe $社交数据库
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'my_site_db', # Username$database name
'USER': 'username', #Username:
'PASSWORD': 'password',
'HOST': '?', # Database host address
}
}