若要在 Azure 入口網站中建立單一資料庫,本快速入門會從 Azure SQL 頁面開始。
瀏覽至選取 SQL 部署選項頁面。
在 SQL 資料庫下,將資源類型設定為單一資料庫,然後選取 [建立]。
在建立 SQL 資料庫表單的基本資料索引標籤上,在專案詳細資料下,選取想要的 Azure 訂用帳戶。
針對資源群組選取 [建立新的],輸入 myResourceGroup,然後選取 [確定]。
針對資料庫名稱輸入 mySampleDatabase。
在伺服器中,選取 [建立新的],並以下列值填寫新伺服器表單:
選取 [確定]。
將您要使用 SQL 彈性集區設為否。
針對 [工作負載環境],為此練習指定開發。
Azure 入口網站提供工作負載環境選項,可協助預先設定部分組態設定。 可以覆寫這些設定。 此選項僅適用於 [建立 SQL Database] 入口網站頁面。 否則,[工作負載環境] 選項對授權或其他資料庫組態設定沒有任何影響。
- 選擇開發工作負載環境會設定幾個選項,包括:
- [備份儲存體備援] 選項是本地備援儲存體。 本地備援儲存體的成本較低,適用於不需要區域或異地複寫儲存體備援的實際執行前環境。
- 計算 + 儲存體支援一般用途,為無伺服器型,配有單個虛擬核心。 預設會有一小時的自動暫停延遲。
- 選擇實際執行工作負載環境設定:
- 根據預設,[備份儲存體備援] 為異地備援儲存體。
- 計算 + 儲存體支援一般用途,佈建有 2 個虛擬核心和 32 GB 的儲存體。 可以在下一步中進一步修改此資訊。
在計算 + 儲存體下,選取 [設定資料庫]。
本快速入門使用無伺服器資料庫,因此請將 [服務層級] 保持設定為 [一般用途 (最經濟實惠的無伺服器計算)],並將 [計算層] 設定為 [無伺服器]。 選取套用。
在 [備份儲存體備援] 底下,為要儲存備份的儲存體帳戶選擇備援選項。 若要深入了解,請參閱備份儲存體備援。
完成時,選取 [下一步:網路功能],為於頁面底部。
在網路功能索引標籤的連線方法中,選取 [公用端點]。
針對 [防火牆規則],將 [新增目前的用戶端 IP 位址] 設定為 [是]。 將 [允許 Azure 服務和資源存取此伺服器] 設定為 [否]。
在 [連線原則] 底下,選擇 [預設] 連線原則,並將 [最低的 TLS 版本] 保留為預設的 [TLS 1.2]。
選取頁面底部的 [下一步:安全性]。
在 [安全性] 頁面上,您可以選擇開始免費試用適用於 SQL 的 Microsoft Defender,以及視需要設定總帳、受控識別和透明資料加密 (TDE)。 完成時,選取 [下一步:其他設定],位於頁面底部。
在 [其他設定] 索引標籤的 [資料來源] 區段中,針對 [使用現有的資料],選取 [範例]。 這會建立 AdventureWorksLT
範例資料庫,同時提供一些可供查詢和實驗的資料表和資料,而不是空的空白資料庫。 您也可以設定資料庫定序和維護時間範圍。
選取頁面底部的 [檢閱 + 建立]:
檢閱 [檢閱 + 建立] 頁面之後,選取 [建立]。
此區段中的 Azure CLI 程式碼區塊會建立資源群組、伺服器、單一資料庫,以及適用於伺服器存取的伺服器層級 IP 防火牆規則。 請務必記錄所產生的資源群組和伺服器名稱,以便您稍後可以管理這些資源。
首先,安裝最新的 Azure CLI。
注意
若要簡化資料庫建立流程,也可以使用 az sql up 命令,透過單一命令建立資料庫及其所有關聯資源。 這包括資源群組、伺服器名稱、伺服器位置、資料庫名稱和登入資訊。 建立資料庫時預設的定價層為 [一般用途]、[已佈建]、[標準系列 (Gen5)]、[2 個虛擬核心]。
如果您沒有 Azure 訂用帳戶,請在開始之前先建立 Azure 免費帳戶。
備妥環境以使用 Azure CLI
啟動 Azure Cloud Shell
Azure Cloud Shell 是免費的互動式 Shell,可讓您用來執行本文中的步驟。 它具有預先安裝和設定的共用 Azure 工具,可與您的帳戶搭配使用。
若要開啟 Cloud Shell,請選取程式碼區塊右上角的 [試試看]。 您也可以移至 https://shell.azure.com ,從另一個瀏覽器索引標籤啟動 Cloud Shell。
當開啟 Cloud Shell 時,請確認已為您的環境選取 Bash。 後續的工作階段將會在 Bash 環境中使用 Azure CLI。 選取 [複製] 即可複製程式碼區塊,將它貼到 Cloud Shell 中,然後按 Enter 鍵加以執行。
登入 Azure
系統會在登入的初始帳戶下自動驗證 Cloud Shell。 使用下列指令碼透過不同的訂閱登入,並將 <Subscription ID>
取代為您的 Azure 訂用帳戶識別碼。 如果您沒有 Azure 訂用帳戶,請在開始之前先建立 Azure 免費帳戶。
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
如需詳細資訊,請參閱設定使用中訂閱或以互動方式登入
設定參數值
後續的命令會使用下列值來建立資料庫和所需的資源。 伺服器名稱在所有 Azure 中必須是全域唯一的名稱,因此會使用 $RANDOM 函式來建立伺服器名稱。
請針對您的環境變更為適當的位置。 使用 IP 位址範圍取代 0.0.0.0
,以符合您的特定環境。 使用您所用電腦的公用 IP 位址,限制只有您的 IP 位址才能存取伺服器。
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
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 資源的邏輯容器。 下列範例會在 eastus Azure 區域建立名為 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 Cloud Shell
Azure Cloud Shell 是免費的互動式 Shell,可讓您用來執行本文中的步驟。 它具有預先安裝和設定的共用 Azure 工具,可與您的帳戶搭配使用。
若要開啟 Cloud Shell,請選取程式碼區塊右上角的 [試試看]。 您也可以移至 https://shell.azure.com ,從另一個瀏覽器索引標籤啟動 Cloud Shell。
當開啟 Cloud Shell 時,請確認已為您的環境選取 PowerShell。 後續的工作階段會在 PowerShell 環境中使用 Azure CLI。 選取 [複製] 即可複製程式碼區塊,將它貼到 Cloud Shell 中,然後按 Enter 鍵加以執行。
設定參數值
後續的命令會使用下列值來建立資料庫和所需的資源。 伺服器名稱在所有 Azure 中必須是全域唯一的名稱,因此會使用 Get-Random Cmdlet 建立伺服器名稱。
在下列程式碼片段:
- 配合您的特定環境,取代 ip 位址範圍中的
0.0.0.0
。
- 以強式密碼為您的
adminLogin
取代 <strong password here>
。
# Set variables for your server and database
$resourceGroupName = "myResourceGroup"
$location = "eastus"
$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