Django使用MySQL数据库

由于SQLite不支持Git版本控制,所以将Django的默认数据库换到MySQL当中。

开始

修改配置文件

修改settings默认配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

修改为MySQL的引擎

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'your_db_name',
        'USER': 'your_mysql_username',
        'PASSWORD': 'your_mysql_password',
        'HOST': 'your_mysql_server_ip',
        'PORT': 'your_mysql_server_port',
    }
}

安装pymysql库

pip install pymysql
安装完成后,run程序会发现报错
Error loading MySQLdb module
这有两种解决办法,一种是改Django包里面的pymysql,通用性好。今天在差SOF的时候又遇到了这样一个解决方法,简单好用。

在manage.py中增加一个异常捕获即可

try:
import pymysql
pymysql.install_as_MySQLdb()
except:
pass

MySQL配置远程登录

默认情况下MySQL是没有开启远程登录的,所以需要配置之后配合上面的设置一起使用。登录mysql命令行之后,一般有两种办法:

mysql -u yourmysqlUsername -p -h yourMysqlIp -P yourMysqlPort

如果连不上的话,可以通过以下方式排查:

Done.

Published with Ghost | Moegi