適用于:
Microsoft SQL Server 2005 Express Edition
Microsoft Visual Studio 2005
摘要:SQLServer Express Edition 是基于 SQL Server 2005 技術(shù)的免費產(chǎn)品,包括特有的應(yīng)用程序 XCopy功能以及不同于其他 SQL Server 2005 版本的網(wǎng)絡(luò)和安全性。本文討論了這些主題以及 SQL Server Express 與Visual Studio 2005 集成的問題,同時還將本產(chǎn)品與現(xiàn)有的 Microsoft 免費數(shù)據(jù)庫(如 MSDE 和 Jet)進行了比較。
簡介
SQLServer Express 是基于 SQL Server 2005技術(shù)的一款免費易用的數(shù)據(jù)庫產(chǎn)品,旨在提供一個非常便于使用的數(shù)據(jù)庫平臺,可以針對其目標(biāo)情況進行快速部署。之所以便于使用,首先是因為它具有一個簡單可靠的圖形用戶界面 (GUI) 安裝程序,可以引導(dǎo)用戶完成安裝過程。SQL Server Express 附帶的免費 GUI 工具包括:SQLServer Management Studio Express Edition(啟動時可以使用的技術(shù)預(yù)覽版本)、Surface AreaConfiguration Tool 和 SQL Server ConfigurationManager。這些工具可以簡化基本的數(shù)據(jù)庫操作。通過與 Visual Studio項目的集成,數(shù)據(jù)庫應(yīng)用程序的設(shè)計和開發(fā)也變得更加簡單。此外,我還將介紹通過移動數(shù)據(jù)庫應(yīng)用程序(像移動典型 Windows文件一樣)來對其進行部署的功能。服務(wù)和修補也得到了簡化和自動化。
SQL Server Express 使用與其他 SQLServer 2005 版本同樣可靠的、高性能的數(shù)據(jù)庫引擎,也使用相同的數(shù)據(jù)訪問 API(如 ADO.NET、SQL NativeClient 和 T-SQL)。事實上,它與其他 SQL Server 2005 版本的不同僅體現(xiàn)在以下方面:
• 缺乏企業(yè)版功能支持
• 僅限一個 CPU
• 緩沖池內(nèi)存限制為 1 GB
• 數(shù)據(jù)庫最大為 4 GB
默認(rèn)情況下,在 SQL Server Express中,啟用諸如自動關(guān)閉和像復(fù)制文件一樣復(fù)制數(shù)據(jù)庫的功能,而禁用高可用性和商業(yè)智能功能。如果需要,也容易進行伸縮,因為 SQL ServerExpress 應(yīng)用程序可以無縫地與 SQL Server 2005 Workgroup Edition、SQL Server 2005Standard Edition 或 SQL Server 2005 Enterprise Edition 一起使用。通過 Web下載文件可以進行免費、快速、方便的部署。
本白皮書介紹 SQL Server Express 特有的組件和功能,如應(yīng)用程序XCopy(用戶實例)、網(wǎng)絡(luò)和安全性。還介紹常見情況的使用原則。此外,我還將介紹使用 Microsoft Visual Studio 2005輕松開發(fā)數(shù)據(jù)應(yīng)用程序,這主要針對以下人員:
• 愛好者和其他非專業(yè)開發(fā)人員
• 數(shù)據(jù)庫開發(fā)人員、管理員和專業(yè)操作人員
• 業(yè)務(wù)分析人員
• 技術(shù)決策者
目標(biāo)情況
開發(fā) SQL Server Express 是為了滿足以下兩個不同的用途。第一個用途是用作服務(wù)器產(chǎn)品,特別是作為 Web 服務(wù)器或數(shù)據(jù)庫服務(wù)器。第二個用途是用作本地客戶端數(shù)據(jù)存儲區(qū),其中應(yīng)用程序數(shù)據(jù)訪問不依賴于網(wǎng)絡(luò)。易用性和簡單性是主要設(shè)計目標(biāo)。
SQL Server Express 主要用于以下三種情況:
• 非專業(yè)開發(fā)人員生成 Web 應(yīng)用程序
• ISV 將 SQL Server Express 重新發(fā)布為低端服務(wù)器或客戶端數(shù)據(jù)存儲區(qū)
• 愛好者生成基本的客戶端/服務(wù)器應(yīng)用程序
SQL Server Express 提供的易用、可靠的數(shù)據(jù)庫平臺功能豐富,可用于這些情況。特別要注意安裝和部署的易用性和可靠性使 ISV 的使用和重新發(fā)布變得輕松。
SQL Server 2005 Express Edition 的主要功能
SQLServer Express 使用的數(shù)據(jù)庫引擎與其他 SQL Server 2005版本相同,并且所有編程功能也相同。有關(guān)上述主題的其他信息,請參閱 SQL Server 2005 聯(lián)機叢書。下面詳細(xì)介紹了 SQLServer Express 特有的、并且/或者對客戶有較顯著影響的功能。
引擎規(guī)范
SQL引擎支持 1 個 CPU、 1 GB RAM 和 4 GB 的數(shù)據(jù)庫大小。此機制允許通過定義適當(dāng)?shù)臄帱c來輕松區(qū)別于其他 SQL Server2005 版本。另外,沒有工作負(fù)荷中止值,并且引擎的執(zhí)行方式與其他版本相同。對可以附著到 SQL Server Express的用戶數(shù)沒有硬編碼限制,但其 CPU 和內(nèi)存限制實際上限制可以從 SQL Server Express 數(shù)據(jù)庫獲取可接受響應(yīng)次數(shù)的用戶數(shù)。
SQL Server Express 可以安裝并運行在多處理器計算機上,但是不論何時,只使用一個 CPU。在內(nèi)部,引擎將用戶調(diào)度程序線程數(shù)限制為 1,這樣一次只使用 1 個 CPU。因為一次只能使用一個 CPU,所以不支持執(zhí)行諸如并行查詢這樣的功能。
1GB RAM限制是對緩存池的內(nèi)存限制。緩存池用于存儲數(shù)據(jù)頁和其他信息。但是,跟蹤連接、鎖等所需的內(nèi)存不計入緩存池限制。因此,服務(wù)器使用的總內(nèi)存有可能大于1 GB,但用于緩存池的內(nèi)存絕不會超過 1 GB。不支持或不需要地址窗口化擴展插件 (AWE) 或 3 GB 數(shù)據(jù)訪問。
4GB 數(shù)據(jù)庫大小限制僅適用于數(shù)據(jù)文件,而不適用于日志文件。但是,不限制可以附著到服務(wù)器的數(shù)據(jù)庫數(shù)。SQL Server Express的啟動略有變化。用戶數(shù)據(jù)庫不會自動啟動,分布式事務(wù)處理協(xié)調(diào)器也不會自動初始化。雖然對于用戶體驗而言,除了啟動速度更快之外,感覺不出什么變化。仍建議要使用 SQL Server Express 的編程人員在設(shè)計自己的應(yīng)用程序時,牢記這些變化。
多個 SQL Server2005 Express 安裝可以與其他 SQL Server 2000、SQL Server 2005 或 MicrosoftDesktop Engine (MSDE) 安裝共存于同一臺計算機上。通常,最好將 SQL Server 2000 實例升級到 ServicePack 4 (SP4)。在同一臺計算機上,最多可以安裝 16 個 SQL Server Express實例。這些實例的名稱必須是唯一的,以便可以標(biāo)識它們。
默認(rèn)情況下,SQL Server Express 安裝為一個名為 SQLEXPRESS 的命名實例。這個特殊的實例可以在多個應(yīng)用程序和應(yīng)用程序供應(yīng)商之間共享。建議您使用此實例,除非您的應(yīng)用程序具有特殊配置要求。
可用于編程 SQL Server Express 的 API 與用于編程 SQL Server 2005 的 API相同,這樣如果用戶選擇轉(zhuǎn)到其他 SQL Server 2005 版本,他們也不會感到有任何不適應(yīng)。支持 SQL Server 2005中的所有新功能(例如公共語言運行時 (CLR) 集成)、新數(shù)據(jù)類型(例如 VARCHAR(MAX) 和XML)、用戶定義類型和用戶定義聚合。此外,SQL Server Express 數(shù)據(jù)庫可以附著到 SQL Server 2005,而且使用SQL Server Express 實例編寫的應(yīng)用程序同樣可以與 SQL Server 2005 實例一起協(xié)調(diào)運行。還支持復(fù)制和 SQLService Broker 功能,該功能將在后面詳細(xì)介紹。