解析SQL Azure與SQL Server有何異同

不過,SQL Azure不是全新的產(chǎn)品,它是基于SQL Server技術(shù)構(gòu)建的,但是又不是簡單地移至SQL Server。那么,相對于SQL Server,SQL Azure做了什么樣的修改,它與SQL Server存在哪些方面的異同呢。這篇文章,編者將通過一些解析解開這個(gè)謎底。

與本地的SQL Server實(shí)例類似,SQL Azure為基于Transact-SQL的數(shù)據(jù)庫訪問提供了一個(gè)TDS接口。這使得應(yīng)用程序像使用SQL Server 一樣來使用SQL Azure數(shù)據(jù)庫。SQL Azure是一個(gè)云端的服務(wù),在管理上跟本地的SQL Server實(shí)例有一些小的差異。

而與本地SQL Server實(shí)例不同的是,SQL Azure將邏輯上的管理與物理上的管理分離了出來。雖然可以繼續(xù)管理數(shù)據(jù)庫、登錄、用戶和角色,但是微軟會(huì)管理和配置物理硬件,例如硬盤、服務(wù)器和存儲(chǔ)。這樣,SQL Azure不僅能提供一個(gè)大規(guī)模的、多租戶的數(shù)據(jù)庫服務(wù),還可以提供企業(yè)級的可用性、可擴(kuò)展性、安全性和自我修復(fù)能力。

由于微軟負(fù)責(zé)所有的物理管理,所以SQL Azure和本地的SQL Server實(shí)例會(huì)在管理、服務(wù)提供、Transact-SQL支持、編程模式等方面略有不同。

首先,在邏輯管理和物理管理方面。

雖然SQL Azure在管理數(shù)據(jù)庫的物理資源上發(fā)揮了積極作用,但是數(shù)據(jù)庫管理員仍然在管理基于SQL Azure的應(yīng)用程序方面有著舉足輕重的作用。使用SQL Azure,數(shù)據(jù)庫管理員仍然需要?jiǎng)?chuàng)建和管理數(shù)據(jù)庫模式(Schema)、統(tǒng)計(jì)、調(diào)優(yōu)索引、優(yōu)化查詢以及管理安全性(登錄、用戶和角色等)等。更多安全管理信息,請參閱MSDN網(wǎng)站上的《在SQL Azure中管理數(shù)據(jù)庫與登錄(Managing Logins and Users in SQL Azure)》。

Windows Server   2012(圖片來源于網(wǎng)絡(luò))

Windows Server 2012

SQL Azure數(shù)據(jù)庫管理與SQL Server數(shù)據(jù)庫在物理管理方面最大的不同是,SQL Azure不僅能夠自動(dòng)復(fù)制所有數(shù)據(jù)來提供高可用性,還可以管理負(fù)載均衡。當(dāng)任何主數(shù)據(jù)庫服務(wù)器停止工作的時(shí)候,另外一臺(tái)正常運(yùn)行的備份數(shù)據(jù)庫會(huì)自動(dòng)接替主服務(wù)器,這就是故障轉(zhuǎn)移的功能。而且,這個(gè)過程對用戶來說是透明的。

為了提供這一層面的物理管理,用戶不能控制SQL Azure的物理資源。舉例來說,不能指定數(shù)據(jù)庫或索引駐留的物理硬盤或文件組。因?yàn)椴荒茉L問計(jì)算機(jī)的文件系統(tǒng)并且所有的數(shù)據(jù)都會(huì)被自動(dòng)復(fù)制,所以SQL Server的備份和恢復(fù)命令在SQL Azure上無效。SQL Azure服務(wù)會(huì)備份所有的數(shù)據(jù)庫,不過一般用戶還無法這樣做。

分享到

youjia

相關(guān)推薦