我們在工作中使用SQL Server 2005,當開發開始時,決定創建多個數據庫。例如,我們有一個數據庫用於個人說dbIndividual,另一個用於翻譯說dbLocale。SQL Server 2005 - 多個數據庫
到目前爲止,這簡化了備份和潛在的恢復極大,因爲我們只需要備份,我們需要什麼(除非有一個方法來備份/恢復只是我們不知道的模式。)
這導致我們通過JOINS對多個數據庫表和文件進行多個查詢。
例如:
select customer.firstname, address.addressL1, addressType.value
from dbIndividual.dbo.customer
inner join dbIndividual.dbo.address
on fkCustomerID = iCustomerID
inner join dbLocale.translation.addressType
on fkAddressTypeID = iAddressTypeID
and fkLangID = 1
有什麼缺點呢?除了顯而易見的是,我們無法在多個數據庫中實施數據完整性。由於數據可能位於磁盤完全不同的部分,它會在加入時減慢速度嗎?
我所要求的理由是因爲我們正在重組我們的基礎設施,這是一個不斷涌現的潛在問題。
我實際上只是在發佈之前才知道模式,並認爲這是一個皮塔,你不能像其他產品一樣備份它們。隱約知道Filegroups是什麼,但現在我讀了你的文章,並測試了一個它會做我們想要的。 我想我們在加入如此多的不同數據庫時可能存在性能上的缺陷,這些數據庫可能位於無組織部分的完全不同的磁盤部分。 – jfrobishow 2010-02-04 20:05:59