这是我第一次使用MySQL而不是SQLite3来部署站点,所以在阅读了一些文档之后,我发现必须更改这样的文件:
settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'my_site_db',
'USER': 'username',
'PASSWORD': 'password',
'HOST': '?', #currently using pythonanywhere (not on localhost)
'PORT': '?',
}
}manage.py
try:
import pymysql
pymysql.install_as_MySQLdb()
except:
pass(PyMySQL==0.7.10,Django 1.9,Python3.5)
当我使用python manage.py migrate运行Bash控制台时,会收到以下错误消息:
django.db.utils.OperationalError:(2003年,“无法连接到'localhost‘上的MySQL服务器(Errno 111连接被拒绝)”)
我认为这与数据库配置中的HOST和PORT有关,我不知道应该在这些配置中添加什么,这与MySQL、PythonAnywhere甚至是我自己的域有关吗?如何解决这个问题并使用Django 3.5正确设置MySQL?
发布于 2017-02-22 18:42:28
发布于 2019-03-06 09:02:50
你可以用这种方式
用户名: johndoe
数据库名称:社会数据库
主机: xyz.mysql.pythonwhere-services.com
用户: johndoe
名称: johndoe$johndoe数据库
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'my_site_db', # Username$database name
'USER': 'username', #Username:
'PASSWORD': 'password',
'HOST': '?', # Database host address
}
}https://stackoverflow.com/questions/42399671
复制相似问题