快速入门:使用 Azure PowerShell 创建和查询 Azure SQL 数据仓库

使用 Azure PowerShell 快速创建 Azure SQL 数据仓库。

如果没有 Azure 订阅,请在开始前创建一个试用帐户

本教程需要 Azure PowerShell 模块版本 5.1.1 或更高版本。 运行 Get-Module -ListAvailable AzureRM 查找当前版本。 如果需要进行安装或升级,请参阅安装 Azure PowerShell 模块

Note

创建 SQL 数据仓库可能会导致新的计费服务。 有关详细信息,请参阅 SQL 数据仓库定价

登录 Azure

使用 Add-AzureRmAccount 命令登录到 Azure 订阅,并按照屏幕上的说明进行操作。

Add-AzureRmAccount -EnvironmentName AzureChinaCloud

若要查看正在使用的订阅,请运行 Get-AzureRmSubscription

Get-AzureRmSubscription

如果需要使用与默认订阅不同的订阅,请运行 Set-AzureRmContext

Set-AzureRmContext -SubscriptionName "MySubscription"

创建变量

定义在本快速入门的脚本中使用的变量。

# The data center and resource name for your resources
$resourcegroupname = "myResourceGroup"
$location = "ChinaEast"
# The logical server name: Use a random value or replace with your own value (do not capitalize)
$servername = "server-$(Get-Random)"
# Set an admin name and password for your database
# The sign-in information for the server
$adminlogin = "ServerAdmin"
$password = "ChangeYourAdminPassword1"
# The ip address range that you want to allow to access your server - change as appropriate
$startip = "0.0.0.0"
$endip = "0.0.0.0"
# The database name
$databasename = "mySampleDataWarehosue"

创建资源组

使用 New-AzureRmResourceGroup 命令创建 Azure 资源组。 资源组是在其中以组的形式部署和管理 Azure 资源的逻辑容器。 以下示例在 chinaeast 位置创建名为 myResourceGroup 的资源组。

New-AzureRmResourceGroup -Name $resourcegroupname -Location $location

创建逻辑服务器

使用 New-AzureRmSqlServer 命令创建 Azure SQL 逻辑服务器。 逻辑服务器包含一组作为组管理的数据库。 以下示例使用管理员用户名 ServerAdmin 和密码 ChangeYourAdminPassword1 在资源组中创建随机命名的服务器。 根据需要替换这些预定义的值。

New-AzureRmSqlServer -ResourceGroupName $resourcegroupname `
    -ServerName $servername `
    -Location $location `
    -SqlAdministratorCredentials $(New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $adminlogin, $(ConvertTo-SecureString -String $password -AsPlainText -Force))

配置服务器防火墙规则

使用 New-AzureRmSqlServerFirewallRule 命令创建 Azure SQL 服务器级防火墙规则。 服务器级防火墙规则允许外部服务器(例如 SQL Server Management Studio 或 SQLCMD 实用程序)通过 SQL 数据仓库服务防火墙连接到 SQL 数据仓库。 在以下示例中,防火墙仅对其他 Azure 资源开放。 要启用外部连接,请将 IP 地址更改为适合环境的地址。 若要开放所有 IP 地址,请使用 0.0.0.0 作为起始 IP 地址,使用 255.255.255.255 作为结束地址。

New-AzureRmSqlServerFirewallRule -ResourceGroupName $resourcegroupname `
    -ServerName $servername `
    -FirewallRuleName "AllowSome" -StartIpAddress $startip -EndIpAddress $endip

Note

SQL 数据库和 SQL 数据仓库通过端口 1433 进行通信。 如果尝试从企业网络内部进行连接,则该网络的防火墙可能不允许经端口 1433 的出站流量。 如果是这样,则无法连接到 Azure SQL 服务器,除非 IT 部门开放了端口 1433。

使用示例数据创建数据仓库

此示例使用以前定义的变量创建数据仓库。 它将服务目标指定为 DW400,这是针对数据仓库的低成本起点。

New-AzureRmSqlDatabase `
    -ResourceGroupName $resourcegroupname `
    -ServerName $servername `
    -DatabaseName $databasename `
    -Edition "DataWarehouse" `
    -RequestedServiceObjectiveName "DW400" `
    -CollationName "SQL_Latin1_General_CP1_CI_AS" `
    -MaxSizeBytes 10995116277760

所需的参数有:

  • RequestedServiceObjectiveName:请求的数据仓库单位的数量。 增加此数量会增加计算成本。 有关支持值的列表,请参阅内存和并发限制
  • DatabaseName:要创建的 SQL 数据仓库的名称。
  • ServerName:用于创建过程的服务器的名称。
  • ResourceGroupName:要使用的资源组。 若要查找订阅中可用的资源,请使用 Get-AzureResource。
  • Edition:必须为“DataWarehouse”才能创建 SQL 数据仓库。

可选参数有:

  • CollationName:在不指定的情况下,默认排序规则是 SQL_Latin1_General_CP1_CI_AS。 在数据库上不能更改排序规则。
  • MaxSizeBytes:数据库的默认最大大小为 10 GB。

有关参数选项的详细信息,请参阅 New-AzureRmSqlDatabase

清理资源

本系列中的其他快速入门教程是在本快速入门的基础上制作的。

Tip

如何打算继续学习后续快速入门教程,请不要清除本快速入门中创建的资源。 如果不打算继续,请在 Azure 门户中执行以下步骤,删除本快速入门创建的所有资源。

Remove-AzureRmResourceGroup -ResourceGroupName $resourcegroupname

后续步骤

现已创建数据仓库、防火墙规则、连接到数据仓库,并运行了几个查询。 若要了解有关 Azure SQL 数据仓库的详细信息,请继续有关加载数据的教程。