快速入门:使用 ARM 模板在 Azure SQL 数据库中创建单一数据库
适用于:Azure SQL 数据库
在 Azure SQL 数据库中创建数据库时,创建单一数据库是最快速且最简单的选项。 本快速入门介绍如何使用 Azure 资源管理器模板(ARM 模板)创建单一数据库。
ARM 模板是定义项目基础结构和配置的 JavaScript 对象表示法 (JSON) 文件。 模板使用声明性语法。 在声明性语法中,你可以在不编写创建部署的编程命令序列的情况下,描述预期部署。
如果你的环境满足先决条件,并且你熟悉如何使用 ARM 模板,请选择“部署到 Azure”按钮。 Azure 门户中会打开模板。
先决条件
如果没有 Azure 订阅,请创建一个试用版订阅。
权限
若要通过 Transact-SQL 创建数据库:需要 CREATE DATABASE
权限。 若要创建数据库,登录名必须是服务器管理员登录名(预配 Azure SQL 数据库逻辑服务器时创建)、服务器的 Microsoft Entra 管理员、master
中 dbmanager 数据库角色的成员。 有关详细信息,请参阅 CREATE DATABASE。
若要通过 Azure 门户、PowerShell、Azure CLI 或 REST API 创建数据库:需要 Azure RBAC 权限,特别是参与者、SQL DB 参与者或 SQL Server 参与者 Azure RBAC 角色。 有关详细信息,请参阅 Azure RBAC 内置角色。
查看模板
单一数据库有一组通过两个购买模型中的一个定义的计算、内存和存储资源。 创建单一数据库时,还需要定义一个服务器来管理它并将它放置在指定区域的 Azure 资源组中。
本快速入门中使用的模板来自 Azure 快速启动模板。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.12.40.16777",
"templateHash": "16856611863128783179"
}
},
"parameters": {
"serverName": {
"type": "string",
"defaultValue": "[uniqueString('sql', resourceGroup().id)]",
"metadata": {
"description": "The name of the SQL logical server."
}
},
"sqlDBName": {
"type": "string",
"defaultValue": "SampleDB",
"metadata": {
"description": "The name of the SQL Database."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
},
"administratorLogin": {
"type": "string",
"metadata": {
"description": "The administrator username of the SQL logical server."
}
},
"administratorLoginPassword": {
"type": "secureString",
"metadata": {
"description": "The administrator password of the SQL logical server."
}
}
},
"resources": [
{
"type": "Microsoft.Sql/servers",
"apiVersion": "2022-05-01-preview",
"name": "[parameters('serverName')]",
"location": "[parameters('location')]",
"properties": {
"administratorLogin": "[parameters('administratorLogin')]",
"administratorLoginPassword": "[parameters('administratorLoginPassword')]"
}
},
{
"type": "Microsoft.Sql/servers/databases",
"apiVersion": "2022-05-01-preview",
"name": "[format('{0}/{1}', parameters('serverName'), parameters('sqlDBName'))]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard",
"tier": "Standard"
},
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('serverName'))]"
]
}
]
}
该模板中定义了以下资源:
可以在 Azure 快速入门模板中找到更多 Azure SQL 数据库模板示例。
部署模板
$projectName = Read-Host -Prompt "Enter a project name that is used for generating resource names"
$location = Read-Host -Prompt "Enter an Azure location (i.e. chinaeast2)"
$adminUser = Read-Host -Prompt "Enter the SQL server administrator username"
$adminPassword = Read-Host -Prompt "Enter the SQL Server administrator password" -AsSecureString
$resourceGroupName = "${projectName}rg"
New-AzResourceGroup -Name $resourceGroupName -Location $location
New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.sql/sql-database/azuredeploy.json" -administratorLogin $adminUser -administratorLoginPassword $adminPassword
Read-Host -Prompt "Press [ENTER] to continue ..."
验证部署
若要查询数据库,请参阅查询数据库。
清理资源
如果需要,请保留此资源组、服务器和单一数据库。 现在可以使用不同的方法连接和查询数据库。
- 创建服务器级防火墙规则,以便通过本地或远程工具连接到单一数据库。 有关详细信息,请参阅创建服务器级防火墙规则。
- 创建服务器级防火墙规则后,使用多种不同的工具和语言连接和查询数据库:
如果要删除资源组:
$resourceGroupName = Read-Host -Prompt "Enter the Resource Group name"
Remove-AzResourceGroup -Name $resourceGroupName
相关内容
- 若要使用 Azure CLI 创建单一数据库,请参阅 Azure CLI 示例。
- 若要使用 Azure PowerShell 创建单一数据库,请参阅 Azure PowerShell 示例。
- 若要了解如何创建 ARM 模板,请参阅创建第一个模板。