django 数据库配置
目录
前提
Ubuntu安装好python3,这里我使用的是python3.7。可以直接安装anaconda,里面包含了python3,numpy等常用的库。
1 安装django
sudo apt install django
2 安装数据库
django运行需要数据库,这里选择mariadb。
sudo apt install mariadb-server
sudo apt install mariadb-client
安装好之后启动数据库:
sudo systemctl start mysql
root登录数据库:
sudo mysql -u root
修改root用户密码
update mysql.user set Password=PASSWORD('123456'),plugin='' where user='root';
然后重启mysql
sudo systemctl restart mysql
就可以使用普通权限登录root用户:
3 配置django对mariadb数据库的访问
先通过pip安装pymysql。
pip install pymysql
在django项目中__init__.py添加如下代码:
# __init__.py
import pymysql
pymysql.install_as_MySQLdb()
为了django连接数据库的需要,我们在数据库中创建一个新的用户(也可以直接使用root用户),顺序执行以下命令:
create user ben@localhost identified by '123456';
flush privileges;
grant all on *.* to ben@localhost;
这样我们再用ben登录数据库,可以看到对所有的数据库都有了读写的权限:
接着修改django项目中的settings.py文件:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': os.path.join(BASE_DIR, 'db.mysql'),
'USER': 'ben',
'PASSWORD': '123456',
'HOST': 'localhost',
'PORT': '3306',
}
}
接着执行django项目:
python manager.py runserver
如果遇到sqlparser等错误,可以通过pip安装。
如果出现如下错误:
就将这个函数中的query.decode()注释掉,Python3不需要这个。
接下来再运行项目,应该就可以了: