练习 - 创建 Azure SQL 数据库

已完成

你的运输公司希望在其他公司中脱颖而出,又不能耗费巨资。 要在提供最佳服务的同时控制成本,必须掌握如何设置数据库。

你将在此处了解创建 Azure SQL 数据库时要考虑的事项,包括:

  • 逻辑服务器如何充当数据库的管理容器。
  • 购买模型之间的差异。
  • 弹性池如何使你能够在数据库之间共享处理能力。
  • 排序规则如何影响数据的比较和排序方式。
  • 如何从 Azure 门户调用 Azure SQL 数据库。
  • 如何添加防火墙规则,确保只能从受信任的源访问数据库。

一台服务器,多个数据库

创建第一个 Azure SQL 数据库时,还可以创建 Azure SQL 逻辑服务器。 可将逻辑服务器视为数据库的管理容器。 可以通过逻辑服务器控制登录、防火墙规则和安全策略。 此外还可以在逻辑服务器中的每个数据库上替代这些策略。

目前,你只需要一个数据库,但是,逻辑服务器使你可以在以后添加更多数据库并在所有数据库中优化性能。

选择性能:DTU 和 vCore

Azure SQL 数据库提供两种购买模型:DTU 和 vCore。

  • 什么是 DTU?

    DTU 代表数据库事务单位,是计算、存储和 I/O 资源的组合度量。 可将 DTU 模型视为简单的预配置购买选项。

    因为逻辑服务器可以容纳多个数据库,因此还可以考虑使用 eDTU,即弹性数据库事务单位。 此选项支持你选择一种价格,但允许池中的每个数据库根据当前负载消耗更少或更多的资源。

  • 什么是 vCore?

    vCore 代表虚拟核心,它使你能够更好地控制你所创建和为其付费的计算和存储资源。

    DTU 模型提供了计算、存储和 I/O 资源的固定组合,但 vCore 模型与之不同,使用该模型可以独立配置这些资源。 例如,使用 vCore 模型可以增加存储容量但保留现有计算量和 I/O 吞吐量。

运输和物流原型只需要一个数据库。 你决定使用 DTU 选项,因为它提供了计算、存储和 I/O 性能的最佳平衡。 在构建原型时使用它的成本也更低。

什么是 SQL 弹性池?

创建 Azure SQL 数据库时,可以创建“SQL 弹性池”。

SQL 弹性池与 eDTU 相关。 它们使你能够购买一组在池中的所有数据库之间共享的计算和存储资源。 每个数据库都可以在设置的限制内使用所需资源,具体取决于当前的负载。

对于原型,无需使用 SQL 弹性池,因为仅需要一个 SQL 数据库。

排序规则是什么?

排序规则是指对数据进行排序和比较的规则。 排序规则有助于在区分大小写、重音标记和其他语言特征非常重要的情况下定义排序规则。 使用排序规则可以按顺序排列数据。

让我们来了解一下默认排序规则 SQL_Latin1_General_CP1_CI_AS 的含义:

  • Latin1_General 是指西欧语言系列。
  • CP1 是指代码页 1252,是拉丁字母表的常用字符编码。
  • CI 表示比较不区分大小写。 例如,“HELLO”与“hello”相等。
  • AS 表示比较区分重音。 例如,“résumé”与“resume”不相等。

由于你对数据的排序和比较方式没有特定要求,因此可以选择默认排序规则。

创建 Azure SQL 数据库

请在此处设置数据库,其中包括创建逻辑服务器,并选择支持运输物流应用程序的设置。 实际上,可以选择支持你正在构建的应用类型的设置。

随着时间的推移,如果你发现需要更多的计算能力才可满足需要,那么可调整性能选项,甚至可在 DTU 和 vCore 性能模型之间切换。

注意

本练习要求使用你自己的 Azure 订阅。 若要确保不会产生额外的费用,请在完成本模块后清理创建的任何资源。

  1. 登录 Azure 门户

  2. 从“主页”或在“Azure 服务”中选择“创建资源”。 此时会显示“创建资源”窗格。

  3. 在“类别”下,选择“数据库”,然后在结果中选择“SQL 数据库”。

    显示“创建资源”窗格的屏幕截图,其中突出显示了菜单中的“数据库”和 SQL 数据库资源服务。

  4. 此时,“创建 SQL 数据库”窗格显示。

    注意

    如果订阅符合条件,则可能会在页面顶部看到“想要免费试用 Azure SQL 数据库?”横幅。 选择“应用套餐”以利用此套餐。 在本练习中,你可以在订阅期内免费使用此 Azure SQL 数据库产品/服务,但订阅一次只能有一个免费产品/服务数据库。 有关详细信息,请参阅免费试用 Azure SQL 数据库

    在“基本信息”选项卡上,为每个设置输入以下值。

    设置
    项目详细信息
    订阅 选择订阅
    资源组 选择现有资源组或选择“新建”
    数据库详细信息
    数据库名称 Logistics
    服务器 [请参阅步骤 5]
    是否要使用 SQL 弹性池?
    计算 + 存储 [见第 6 步]
    备份存储冗余
    备份存储冗余 异地冗余备份存储(默认)
  5. 在“服务器”下,选择“新建”。 此时将显示“创建 SQL 数据库服务器”窗格。 为每个设置输入以下值:

    设置
    服务器名称 请输入一个全局唯一的服务器名称
    位置 选择附近的区域
    身份验证方法 使用 SQL 身份验证。
    服务器管理员登录名 选择作为主要管理员登录 ID 的唯一管理员登录名
    密码 所选密码必须包含以下三种类别中的八个或更多字符:大写、小写、数字和非字母数字

    选择“确定”。 服务器字段将更新为你创建的服务器的名称。

  6. 在“数据库详细信息”部分中,对于“计算 + 存储”,选择“配置数据库”。 此时将显示“配置”窗格。 为每个设置输入以下值:

    设置
    服务和计算层
    服务层级 如果使用了免费 Azure SQL 数据库产品/服务,请保留默认设置。

    否则,请在下拉列表的“基于 DTU 的购买模型”下选择“基本”。

    你可以在将来随时纵向扩展或缩减数据库的服务和计算层。
    达到免费使用限制时的行为 如果使用了免费 Azure SQL 数据库产品/服务,请暂时将其设置为“自动暂停数据库至下月”。 稍后可以配置此设置。
    剩余设置 接受默认值

    选择“应用”。

  7. 选择屏幕顶部的“其他设置”选项卡,并为每个设置输入或确认以下值。

    设置
    数据源
    使用现有数据
    数据库排序规则
    排序规则 SQL_Latin1_General_CP1_CI_AS
    维护时段
    维护时段 系统默认(下午 5 点至上午 8 点)
  8. 选择“审阅并创建”以验证你的输入,然后选择“创建”以创建 Azure SQL 数据库。

    重要

    请记住服务器名称、管理员登录名和密码,供以后使用。

在部署过程中,“部署详细信息”会显示创建的资源。 部署完成后,(可选)选择“固定到仪表板”,然后选择“转到资源”。 此时将显示 SQL 数据库服务器的“概述”窗格。

物流 SQL 数据库具有基于服务器名称和登录凭据的唯一名称。

设置服务器防火墙

Azure SQL 数据库现已启动并运行。 有多种选项可用于配置、保护、监视数据库并进行故障排除。 可以指定允许哪些系统通过防火墙访问数据库。 最初,防火墙阻止从 Azure 外部对数据库服务器的所有访问。 对于原型,只需从本地计算机访问数据库。 之后,可以添加更多系统,例如移动应用。 现在,我们使计算机能够通过防火墙访问数据库。

  1. 在命令栏上,选择“设置服务器防火墙”。 此时将显示“网络”窗格。

    显示命令栏的屏幕截图,其中突出显示了“设置服务器防火墙”。

  2. 选择“已选定网络”,然后选择“添加客户端 IP4 地址”。 此操作会自动添加计算机的 IP 地址。

    Azure 门户的屏幕截图,其中显示了“SQL 数据库防火墙设置”窗格,并突出显示了“添加客户端 IP”。

  3. 选择“保存”。

现在,可以使用新数据库和 Azure Cloud Shell 进行一些实践练习。 在下一单元中,你将连接到数据库、创建表、添加一些示例数据,并执行一些 SQL 语句。