一 Django的数据库配置
(一)修改settings.py文件关于数据库的配置:
Django默认使用sqlite:
再添加一个数据库:
如果想要使用mysql,则进行如
如果是在Windows下进行开发需要在项目文件下的__init__.py中配置
显示SQL语句 ,ORM是高层的面向对象的操作,转换为低层的SQL语句,如果想在终端打印对应的SQL语句,可以在setting.py中加上日志记录
(二)、修改好数据库配置之后,在models.py文件里创建表,之后进行数据库迁移工作:
二、读写分离
(一)手动读写分离
- 在使用数据库时,通过.using(db_name)来手动指定要使用的数据库
- 缺点:在大量的对数据库进行操作之后,此种方法繁琐
(二)自动读写分离
通过配置数据库路由,来自动实现,这样就不需要每次读写都手动指定数据库了。数据库路由中提供了四个方法。这里这里主要用其中的两个:db_for_read()决定读操作的数据库,def db_for_write()决定写操作的数据库。
定义Router类
新建myrouter.py脚本,定义Router类:
配置Router
在settings.py中指定DATABASE_ROUTERS
网站的读的性能通常更重要,因此,可以多配置几个数据库,并在读取时,随机选取,比如:一主多从方案
分库分表
在大型web项目中,常常会创建多个app来处理不同的业务,如果希望实现app之间的数据库分离,比如app01走数据库db1,app02走数据库
OpenStack虚拟云桌面在携程呼叫中心的应用
从设计到开发,硅谷技术专家教你做“声控”APP
深度学习系列 | 诺亚面向语音语义的深度学习研究进展
知识图谱中的推理技术及其在高考机器人中的应用
用户在线广告点击行为预测的深度学习模型
知识库上的问答系统:实体、文本及系统观点
深度学习在搜狗无线搜索广告中的应用
元旦三天假期,实现一个电商退单管理系统【四】-手机客户端实现
元旦三天假期,实现一个电商退单管理系统【三】