为了在 Azure 门户中创建单一数据库,本快速入门将从 Azure SQL 页面开始。
浏览选择 SQL 部署选项页。
在“SQL 数据库”下将“资源类型”设置保留为“单一数据库”,然后选择“创建” 。
在“创建 SQL 数据库”窗体的“基本信息”选项卡上的“项目详细信息”下,选择所需的 Azure订阅 。
对于“资源组”,选择“新建”,输入“myResourceGroup”,然后选择“确定” 。
对于“数据库名称”,输入“mySampleDatabase”。
对于“服务器”,选择“新建”,并使用以下值填写“新服务器”窗体 :
选择“确定”。
将“想要使用 SQL 弹性池”设置保留为“否” 。
在“计算 + 存储”下选择“配置数据库” 。
本快速入门使用无服务器数据库,因此将“服务层”设置为“常规用途(最具预算优势的无服务器计算)”,将“计算层”设置为“无服务器”。 选择“应用”。
在“备份存储冗余”下,为将保存备份的存储帐户选择一个冗余选项。 有关详细信息,请参阅备份存储冗余。
在完成时选择“下一步:网络”。
在“网络”选项卡上,对于“连接方法”,选择“公共终结点” 。
对于“防火墙规则”,将“添加当前客户端 IP 地址”设置为“是” 。 将“允许 Azure 服务和资源访问此服务器”设置保留为“否” 。
在“连接策略”下,选择“默认”连接策略,并将“最低 TLS 版本”保留为默认版本 TLS 1.2。
在页面底部选择“下一步: 安全”。
在“安全”页面上,可以选择启动 Microsoft Defender for SQL 的免费试用版,并根据需要配置账本、托管标识和透明数据加密 (TDE)。 在完成时选择“下一步:其他设置”。
在“其他设置”选项卡上的“数据源”部分中,对于“使用现有数据”,请选择“示例”。 这将创建一个 AdventureWorksLT
示例数据库,此数据库包含可查询和试验的一些表和数据,而不是一个空数据库。 还可以配置数据库排序规则和维护时段。
在页面底部选择“查看 + 创建”:
在“查看 + 创建”页上,查看后选择“创建”。
此部分中的 Azure CLI 代码块将创建用于访问服务器的资源组、服务器、单一数据库和服务器级 IP 防火墙规则。 请确保记录生成的资源组和服务器名称,以便可以在以后管理这些资源。
首先,安装最新的 Azure CLI。
如果没有 Azure 试用版订阅,请在开始前创建一个试用版订阅。
为 Azure CLI 准备环境
如需在本地运行 CLI 参考命令,请安装 Azure CLI。 如果在 Windows 或 macOS 上运行,请考虑在 Docker 容器中运行 Azure CLI。 有关详细信息,请参阅如何在 Docker 容器中运行 Azure CLI。
登录 Azure
使用以下脚本通过其他订阅登录,将 <Subscription ID>
替换为 Azure 订阅 ID。 如果没有 Azure 试用版订阅,请在开始前创建一个试用版订阅。
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
有关详细信息,请参阅设置有效的订阅或以交互方式登录。
设置参数值
后续命令使用以下值来创建数据库和所需资源。 服务器名称需要在整个 Azure 中全局唯一,因此使用 $RANDOM 函数创建服务器名称。
根据需要更改环境的位置。 将 0.0.0.0
替换为与你的特定环境匹配的 IP 地址范围。 使用正在使用的计算机的公共 IP 地址将服务器限制为只允许你的 IP 地址访问。
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="China East 2"
resourceGroup="msdocs-azuresql-rg-$randomIdentifier"
tag="create-and-configure-database"
server="msdocs-azuresql-server-$randomIdentifier"
database="msdocsazuresqldb$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
# Specify appropriate IP address values for your environment
# to limit access to the SQL Database server
startIp=0.0.0.0
endIp=0.0.0.0
echo "Using resource group $resourceGroup with login: $login, password: $password..."
创建资源组
使用“az group create”命令创建资源组。 Azure 资源组是在其中部署和管理 Azure 资源的逻辑容器。 以下示例在“chinaeast2”位置创建名为“myResourceGroup”的资源组:
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
创建服务器
使用 az sql server create 命令创建服务器。
echo "Creating $server in $location..."
az sql server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password
使用 az sql server firewall-rule create 命令创建防火墙规则。
echo "Configuring firewall..."
az sql server firewall-rule create --resource-group $resourceGroup --server $server -n AllowYourIp --start-ip-address $startIp --end-ip-address $endIp
创建单一数据库
使用 az sql db create 命令在无服务器计算机层中创建数据库。
echo "Creating $database in serverless tier"
az sql db create \
--resource-group $resourceGroup \
--server $server \
--name $database \
--sample-name AdventureWorksLT \
--edition GeneralPurpose \
--compute-model Serverless \
--family Gen5 \
--capacity 2
可以使用 Azure PowerShell 创建资源组、服务器和单一数据库。
首先,安装最新的 Azure PowerShell。
设置参数值
后续命令使用以下值来创建数据库和所需资源。 服务器名称需要在整个 Azure 中全局唯一,因此使用 Get-Random cmdlet 创建服务器名称。
在以下代码片段中:
- 替换 IP 地址范围中的
0.0.0.0
,以匹配你的特定环境。
- 将
<strong password here>
替换为 adminLogin
的强密码。
# Set variables for your server and database
$resourceGroupName = "myResourceGroup"
$location = "chinaeast2"
$adminLogin = "azureuser"
$password = "<strong password here>"
$serverName = "mysqlserver-$(Get-Random)"
$databaseName = "mySampleDatabase"
# The ip address range that you want to allow to access your server
$startIp = "0.0.0.0"
$endIp = "0.0.0.0"
# Show randomized variables
Write-host "Resource group name is" $resourceGroupName
Write-host "Server name is" $serverName
创建资源组
使用 New-AzResourceGroup 创建 Azure 资源组。 资源组是在其中部署和管理 Azure 资源的逻辑容器。
Write-host "Creating resource group..."
$resourceGroup = New-AzResourceGroup -Name $resourceGroupName -Location $location -Tag @{Owner="SQLDB-Samples"}
$resourceGroup
创建服务器
使用 New-AzSqlServer cmdlet 创建服务器。
Write-host "Creating primary server..."
$server = New-AzSqlServer -ResourceGroupName $resourceGroupName `
-ServerName $serverName `
-Location $location `
-SqlAdministratorCredentials $(New-Object -TypeName System.Management.Automation.PSCredential `
-ArgumentList $adminLogin, $(ConvertTo-SecureString -String $password -AsPlainText -Force))
$server
创建防火墙规则
使用 New-AzSqlServerFirewallRule cmdlet 创建服务器防火墙规则。
Write-host "Configuring server firewall rule..."
$serverFirewallRule = New-AzSqlServerFirewallRule -ResourceGroupName $resourceGroupName `
-ServerName $serverName `
-FirewallRuleName "AllowedIPs" -StartIpAddress $startIp -EndIpAddress $endIp
$serverFirewallRule
使用 PowerShell 创建单一数据库
使用 New-AzSqlDatabase cmdlet 创建单一数据库。
Write-host "Creating a gen5 2 vCore serverless database..."
$database = New-AzSqlDatabase -ResourceGroupName $resourceGroupName `
-ServerName $serverName `
-DatabaseName $databaseName `
-Edition GeneralPurpose `
-ComputeModel Serverless `
-ComputeGeneration Gen5 `
-VCore 2 `
-MinimumCapacity 2 `
-SampleName "AdventureWorksLT"
$database
若要使用 Azure 门户删除 myResourceGroup 及其包含的所有资源:
- 在 Azure 门户中搜索并选择“资源组”,然后从列表中选择“myResourceGroup”。
- 在资源组页上,选择“删除资源组”。
- 在“键入资源组名称”下输入 myResourceGroup,然后选择“删除”。
使用 az group delete 命令删除资源组以及与其关联的所有资源 - 除非你持续需要这些资源。 其中一些资源在创建和删除时可能要稍等片刻。
az group delete --name $resourceGroup
若要删除资源组及其包含所有资源,请使用该资源组的名称运行以下 PowerShell cmdlet:
Remove-AzResourceGroup -Name $resourceGroupName