【发布时间】:2009-11-09 23:53:40
【问题描述】:
我试图在运行时在 2 个 mysql 服务器之间切换。我不需要一直保持两个连接都处于活动状态。
这就是我正在做的事情
from django.conf import settings
from django.db import connection
from django.contrib.auth.models import User
connection.close()
setattr(settings, 'DATABASE_HOST', 'mysql1.com')
list1 = User.objects.all()
connection.close()
setattr(settings, 'DATABASE_HOST', 'mysql2.com')
list2 = User.objects.all()
我有以下settings.py:
DATABASE_HOST = '' # localhost
DATABASE_NAME = test
...
所有服务器上的数据库名称相同,只是每个表的内容不同。
我应该得到 list1 != list2 因为两台服务器上的用户不同。
问题是我总是从 settings.py(在 localhost 上运行)中定义的默认数据库获取用户列表,而不是从 mysql 1 服务器然后从 mysql 2 服务器获取用户列表。
知道我在这里做错了什么吗?
劳伦特
【问题讨论】:
-
我知道您可能已经等不及了,但多数据库支持即将推出 1.2 (code.djangoproject.com/wiki/Version1.2Features),据我所知,计划在 2010 年 3 月推出。
-
为创业公司工作,这有点过分了;)
标签: mysql database django host