Dhr*_*hak 4 python mysql django
MySQL的样本数据库配置:
DATABASES = {
'auth_db': {
'NAME': 'auth_db',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'swordfish',
},
'master': {
'NAME': 'master',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'spam',
},
'slave1': {
'NAME': 'slave1',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'eggs',
},
'slave2': {
'NAME': 'slave2',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'bacon',
},
}
Run Code Online (Sandbox Code Playgroud)
即使某些数据库根本没有使用,Django最初是否也会连接到所有这些数据库?例如。
对多个数据库使用原始游标
如果您使用多个数据库,则可以使用django.db.connections获取特定数据库的连接(和游标)。django.db.connections是一个类似于字典的对象,它允许您使用其别名检索特定的连接:
从django.db导入连接
cursor = connections ['my_db_alias']。cursor()
所以在这里,1.连接对象包含已经建立的连接?还是在发出游标请求时连接?2.是否可以更改此默认行为并按需建立连接(所有查询均为原始查询,而所有数据库均为MySQL)?
首次访问时,使用会与请求的数据库建立持久连接django.db.connections。即,仅在首次使用时才对连接进行延迟评估和连接。相关代码django/db/__init__.py在ConnectionHandler该类中。
查询后,连接不会自动删除,但是连接将一直保持到断开连接为止。如果存在DATABASES从不使用的条目,则不会建立与这些数据库的连接。
| 归档时间: |
|
| 查看次数: |
1525 次 |
| 最近记录: |