django连接mysql数据库'connection refused'的解决

django连接mysql数据库'connection refused'的解决,第1张

settings.py正常,mysql的配置文件也改过了。问题出在没有指定读取的配置文件,

修改 aettings.py :

迁移成功。

之前使用redis时,也发生过类似问题,要手动指定配置文件。

方法/步骤

修改setting.py里面的DATABASES元组为

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'books',#你的数据库名称

'USER': 'root', #你的数据库用户名

'PASSWORD': '', #你的数据库密码

'HOST': '', #你的数据库主机,留空默认为localhost

'PORT': '3306', #你的数据库端口

}

}

INSTALLED_APPS = (

'books',#你的数据库名称

)

在mysql里面创建books数据库

检查配置是否有语法错误

使用python manage.py sqlall books 显示mysql语法

使用python manage.py syncdb同步模型中的数据库

创建成功!

唉,最近赶了个新潮,用起了Python3.4跟Django1.6,数据库依然是互联网企业常见的MySql。

悲催的是在Python2.7时代连接MySql的MySQLdb还不支持Python3.4,还好,苦苦追问G哥终于找到一款代替品,而且效果不错,这代替品就是:pymysql。

下载此物然后进行安装,跟其它python第三包没任何区别,一样的安装。

关于Django1.6中DATABASES的设置也是一样不用做任何修改,跟以前MySQLdb的时候一样,如下所示:

1 DATABASES = { 2 'default': { 3 'ENGINE': 'django.db.backends.mysql', #数据库引擎 4 'NAME': 'test', #数据库名 5 'USER': 'root', #用户名 6 'PASSWORD': 'root', #密码 7 'HOST': '', #数据库主机,默认为localhost 8 'PORT': '', #数据库端口,MySQL默认为3306 9 'OPTIONS': {10 'autocommit': True,11 },12 }13 }

最关键的一点,在站点的__init__.py文件中,我们添加如下代码:

1 import pymysql2 pymysql.install_as_MySQLdb()

做完上述动作后,即可在django中访问mysql了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10823233.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存