Django配置MySQL数据库及采坑记

  1. 云栖社区>
  2. 博客>
  3. 正文

Django配置MySQL数据库及采坑记

艾贺 2018-10-30 23:06:00 浏览834
展开阅读全文

Django默认使用的数据库是SQLite,但在实际中大部分公司或个人开发者都会采用MySQL,原因肯定是MySQL比较好用啊。

在配置MySQL的过程可能会出现一点问题,这里记录一下过程与问题

记录

  1. Django的默认配置文件在生成项目时候,会有一个settings.py文件,里面有各种配置其中有一项是配置数据库的。

我们修改如下:

# settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        'NAME': 'test',
        'USER': 'root',
        'PASSWORD': '123456',
        'HOST': '127.0.0.1',
        'PORT': 3306
    }
}

MySQL的详细配置信息在官网的这个位置:MySQL注意事项

到这里,我们是配置了Django使用MySQL数据库,但是python的mysql库还没有安装。

  1. 安装MySQL的python驱动,mysqlclient是MySQL的官方驱动,推荐用这个,但是在Mac上安装的时候会有小的bug,官网也指出了。不过不难解决

2.1 Mac系统安装mysqlclient. 首先安装mysql-connector-c

brew install mysql-connector-c

2.2 如果只执行上一步之后,直接安装会出现如下错误


img_71466f9f82431330fbd46ae53e4cc97e.png
image.png

2.3 进行修复,根据官网的提示,修改mysql_config,不管电脑上装了几个MySQL程序,修改brew安装的那个mysql_config,位置在/usr/local/bin/mysql_config

修改文件内容:
修改之前:


img_37b148e6de030a980717071c610a3436.png
image.png

修改之后:


img_411a043e07da94b1062c165e6a320d40.png
image.png

也就是从:

libs="$libs -l "

变为:

libs="$libs -lmysqlclient -lssl -lcrypto"
  1. 再次安装mysqlclient
img_134685ba83e0826d5a58b71abc04bd9e.png
image.png
  1. 启动项目即可。现在Django可以正常的使用MySQL数据库了。

最后

如有错误,欢迎指出。

网友评论

登录后评论
0/500
评论
艾贺
+ 关注