Windows Azure Platform体验(2):SQL Azure

Windows Azure Platform有Windows Azure、SQL Azure、Azure AppFabric三部分。

SQL Azure是云关系数据库。您的数据:随时随地管理。SQL Azure是云中的完全关系数据库。

这节我们体验SQL Azure,必备软件:

  • Microsoft SQL Server 2008 R2
  • Windows Azure Platform账户

这次体验有下面几个步骤,分别是:

初始化SQL Azure

首先我们使用账号登录SQL Azure门户,网址为http://sql.azure.com,你可以看到下面页面。我们点击项目名称。

出现使用条款页面。阅读后,如果同意接受这些条款,单击“I accept”(我接受),开始使用实际的SQL Azure数据库。

出现创建服务器页面。我们首先创建一台实际的服务器。就服务器种类而言,通常我们熟悉的服务器可能是物理服务器或虚拟服务器,这里,我们创建一个虚拟服务器,即SQL Azure服务器。也就是说它是通过逻辑方式组合到一起的数据库组合,而不是通过物理方式组合起来的。指定管理员用户名密码和实际要在哪个SQL Azure数据中心创建这台服务器的数据库组。如果在中国大陆,则可以选择东亚。我选择“东亚”的数据中心,点击创建服务器。

当我完成后,出现服务器详细信息页面,这个页面显示了登录到这台服务器的详细信息和已有的数据库以及防火墙配置。页面的顶部提供了唯一的ID和“.database.windows.net”的组合是服务器地址。页面的底部,我们可以看到所有已经创建的数据库。现在只有用来存储其他数据库记录的默认SQL主数据库,我们还没有创建任何数据库。接下来我创建的所有数据库都在这个服务器账户中。

点击“Create Database”创建一个数据库,出现下面页面,这里我将其命名为“lyjDB”,选择版本类型和数据库大小。这些是由你购买的的选择决定,Web版本有1G和5G两个容量,Business版本有10G、20G、30G、40G、50G的大容量。由于这个账户没有限制,我选择最小的配置体验下。

创建完之后,我们可以点击“Connection Strings”连接字符串。SQL Azure为我们提供了两种数据库连接:

我们单击底部的“Test Connectivity”(测试连接)按钮,输入用户名和密码,点击连接,提示下面错误提示框。因为在默认情况下,SQL Azure安全设置不允许任何计算机、服务器或者客户端连接到SQL Azure。

这时我们点击“Firewall Settings”(防火墙设置)选项卡。

你会发现SQL Azure安全设置默认不允许Microsoft服务都无法连接到这个服务器或者数据库,这时我选择“Allow Microsoft Services access to this service”(允许Microsoft服务访问这台服务器)复选框允许连接。这时网站会刷新,并且为我创建一条新的规则,出现一个特定MicrosoftServices条目,允许Microsoft服务本身进行连接,这样我们就可以进行连接了。

返回“Databases”(数据库)选项卡,单击底部的“Test Connectivity”(测试连接)按钮,输入用户名和密码,然后就可以启动测试连接,并看到连接成功。

连接到SQL Azure

1.防火墙设置

打开SQL Server Management Studio R2,用指定的用户名和密码进行登录,连接到这台服务器。注意必须使用R2版本才能连接到云中的SQL Azure数据库。不过登录到SQL Azure与登录内部部署SQL数据库方式的登录名的约定略有不同。除了需要指定用户名还需要加上“@”符号,然后是服务器名称的唯一的ID的部分。

单击“连接”按钮,我们尝试进行连接。出现下面对话框提示连接失败,原因是因为在默认情况下,SQL Azure安全设置不允许任何计算机、服务器或者客户端连接到SQL Azure。

我们需要配置防火墙,返回门户,并转到“Firewall Settings”(防火墙设置)选项卡,配置防火墙规则设置为允许特定连接通过,为我的本地创建一条规则。这样,我们就可以在本地通过SQL Server Management Studio R2进行实际连接了。输入规则名称和IP地址或者IP范围。系统已经识别了我正在连接的IP地址。

创建完成之后,在防火墙规则中出现新增了一条规则。

2.与SQL Azure交互

切换到SQL Server Management Studio R2尝试再次连接,这一次一切都设置好了,现在成功实现连接,它连接了实际的SQL Azure实例。请注意,这台服务器的图标略有不同。它显示的是一个小小的蓝色数据库符号,表示这是一个Azure连接,而不是一个标准的内部部署SQL服务器连接。进入数据库组,你会看到我们刚刚创建的lyjDB数据库。

我现在可以通过SQL Server Management Studio R2和SQL Azure数据库进行交互,方式与使用内部部署数据库方式非常像,也就是我在Management Studio R2中的惯用方式。但是,设计体验略微有些不同,这是因为我们使用的是基于云的数据库。因此,它只具备SQL Server 2008的部分功能,例如,我们无法获得拖放式设计图面。大多数是使用实际的SQL脚本语言来指定表的架构。

在数据库上右击并执行常规的脚本操作,比如Select命令。执行这个命令,并在底部查看显示的结果,与我们使用内部部署数据库非常类似。因此,对于那些标准操作,这与我所习惯的使用和执行方式非常类似。

3.连接到master数据库

我们执行“SELECT @@version”查询,查看SQL Azure的版本。可以看到它返回一个信息:SQL Azure由Microsoft SQL Server 2008派生的。

我们使用master数据库查询sys.databases视图,我们能够看到我们的服务器上创建的所有数据库。

4.创建一个新数据库

我们使用Management Studio R2在SQL Azure中创建一个新数据库。这一步非常简单。在SQL Azure中,我们使用简单的创建数据库执行语句,将立即创建一个新的数据库。

执行“CREATE DATABASE yjingleeDB”

再次查询服务器上数据库,注意我们刚刚创建的yjingleeDB数据库在这个列表中了。

5.连接到新数据库

为了连接到新的数据库,我们必须断开当前连接并重新打开新连接。因为在SQL Azure中,我们的数据库不一定储存在相同的物理服务器上面的。

这点与SQL Server有点不同,SQL Server中,我们可以使用USE语句来更改数据库,在SQL Azure中,我们需要重新连接一次以确保重新连接到SQL Azure的物理服务器群集节点客户端是正确的。我们关闭查询标签,单击更改连接图标。

使用相同账户登录,由于我们想要连接到制定数据库,所以需要点击选项按钮,指定“yjingleeDB”数据库。

连接成功了,我们调用DB_NAME()函数查看当前数据库名称。

配置SQL Azure数据库安全

我们将配置yjingleeDB数据库的安全。学习一下如何为一个数据库创建和配置一个新的登录用户。

我们使用服务器用户名和密码登录默认SQL Azure数据库,创建一个登录用户。

然后我们使用服务器用户名和密码重新登录yjingleeDB数据库。我们为yjingleeDB数据库创建一个登录用户并把这个用户增加到db_owner角色中,即对这个数据库拥有操作权限。即依次执行下面两行脚本。

我们就创建好了,使用这个新账户登录yjingleeDB数据库吧。

执行一个查询,验证当前用户。

在SQL Azure中创建数据库对象

1.创建简单的表

我们创建一个简单的表,只有一个单一的int类型的列。这里必须注意,SQL Azure里面的表必须要有一个聚集索引。如果没有的话不能插入任何数据。聚集索引的不一定是主键列。出于性能的原因,最好在其他列上。

然后插入三笔数据,再执行查询,检索出这些数据。

2.创建复杂的表和索引

我这次依次创建一个Customer表,然后增加一个索引,最后插入一笔数据并查询出来。

3.检查查询计划

我们看看从Customer表中查询数据来体验一下SQL Azure的查询计划。我们先执行一些T-SQL插入10000行数据比较差异。

1行数据的查询计划:

10000行数据的查询计划

调用“Ctrl+L”可视化:

版权声明:本文为博主http://www.zuiniusn.com原创文章,未经博主允许不得转载。

时间: 2024-10-13 01:24:43

Windows Azure Platform体验(2):SQL Azure的相关文章

Windows Azure Platform体验(3):Azure AppFabric

Windows Azure Platform有Windows Azure.SQL Azure.Azure AppFabric三部分. 使用AppFabric,可以轻松将内部部署应用程序与云连接.通过在内部部署的IT应用程序和基于云的服务之间启用安全连接和消息传送,AppFabric提供标识管理和防火墙友好的消息传送,从而保护您的资产. 这节我们体验Azure AppFabric,必备软件: Microsoft Visual Studio 2010 Windows Azure AppFabric

Windows Azure Platform体验(1):Windows Azure

创建云服务项目 首先理解下Web托管角色功能,利用这个功能,我们创建一个新网站,然后将它托管在Windows Azure内. 以管理员身份启动Visual Studio 2010,创建一个新的Azure云服务项目.选择"云"模板类型的"Windows Azure 云服务"项目模板.将这个新项目命名为"HelloAzure",单击"确定"之后,立即弹出一个新的向导. 在这个向导中,可以为这个云应用程序创建一些不同类型的角色,这样

SQL Azure (16)创建PaaS SQL Azure V12数据库

<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China 最新的Azure PaaS SQL Database(SQL Azure)已经在国内正式上线了,在这里笔者简单介绍一下. SQL Azure V12是一个SQL Azure的最新的服务,提供用户SQL Server的连接字符串,用户直接使用PaaS SQL Azure服务,无需管理数据库服务器底层的操作系统. 与传统SQL Server Virtual Machine相比,A

Windows Azure Platform Introduction (11) 了解Org ID、Windows Azure订阅、账户

<Windows Azure Platform 系列文章目录> 了解和掌握Windows Azure相关的基础知识是非常重要的. 问题1:什么叫做Org ID Org ID是Azure China特殊的用户名系统. 一个企业用户可以使用<username>@<OrgID>.partner.onmschina.cn来登陆使用Azure China. 比如公司名为contoso的企业,可以注册Org ID为:@contoso.partner.onmschina.cn 问题2

Windows Azure初体验

目前在IT界,云这个概念的第一意思不再是词典里的解释了.不过它们还是有相同点的——也许确实会酝酿出一块大蛋糕,可也是飘在天上,众神分食之,与我等P民无关.所谓云,不过是网络时代发展到一定阶段的必然产物,而并非划时代的技术质变,so,我一直保持既不排斥亦不主动接触的立场.but,最近我有个个人服务器快到期了,于是也打算尝试一番. 现在比较知名的云服务有很多,国内的首推阿里云,而作为.Neter,Windows Azure也是一种选择.本人同时申请了两者的免费试用体验,对于阿里云,在申请阶段博主被折

Windows Azure 功能再扩充-SQL Database开始支持导入导出功能

本文将介绍 SQL Database 新增的导入导出功能,帮助您可以透过数据层应用程序把数据库导入到 SQL Database,或是将 SQL Database 导出至 Cloud Storage. [背景说明] 在 Facebook 上看到 Eric Shangkuan 分享 ScottGu 发表的文章,文中提到 Windows Azure Platform Management Portal 的再次扩充许多新功能,其中包含下列功能: Service Bus Management and Mo

SQL Azure 初次体验

前天才去申请Windows Azure的账号 , 经过一天多的时间后(比想像中快) , 先收到了SQL Azure的invitation code (Windows Azure好像还要再等一段时间) , 赶快上去create 一个 DB , 就命名为TestDB 接着我是用SSMS连的 不过目前SSMS的对象总管没有办法显示 , 所以只能下SQL命令来操作 先创一个Table , 然后简单的insert一些数据进去 第五个我测试insert中文字 , 结果目前好像没办法正确显示(之后测别的也是一

Windows Azure 超值体验1元一个月,还可获得CSDN 500C币

在CSDN首页上看到Windows Azure 超值体验1元一个月的广告,最重要的是参与活动还可获得CSDN 500C币,果断参加一下. Windows Azure是什么? Windows Azure 是一个开放而灵活的云平台,通过该平台,您可以在世纪互联管理的数据中心的网络中快速生成.部署和管理应用程序.您可以使用任何语言.工具或框架生成应用程序.可将公有云应用程序与现有 IT 环境相集成. Windows Azure 中有什么? 从服务的角度来说,Windows Azure 可以为各类用户提

Windows Azure 初体验

最近看到windows azure 在做活动,只需花一块钱就可以体验一个月的windows azure. 于是,我就注册了一个账号也尝试一把云时代,传送门. 注册很简单的,成功后可以看到这个界面. 然后,我就研究了一下怎么把网站发布到云上,在此分享一下.网站是简单的基于asp.net mvc + code first 比较简单. 首先新建一个asp.net mvc 的网站.在此我命名为 WindowsAzureMVC,为了支持code first 需要添加entity framework 的dl