若要在 Azure 入口網站中建立單一資料庫,本快速入門會從 Azure SQL 頁面開始。
瀏覽至選取 SQL 部署選項頁面。
在 SQL 資料庫下,將資源類型設定為單一資料庫,然後選取 [建立]。
在建立 SQL 資料庫表單的基本資料索引標籤上,在專案詳細資料下,選取想要的 Azure 訂用帳戶。
針對資源群組選取 [建立新的],輸入 myResourceGroup,然後選取 [確定]。
針對資料庫名稱輸入 mySampleDatabase。
在伺服器中,選取 [建立新的],並以下列值填寫新伺服器表單:
- 伺服器名稱:輸入 mysqlserver 並新增一些字元來表示唯一性。 由於伺服器名稱必須是 Azure 中所有伺服器的全域唯一名稱,而不只是訂用帳戶中的唯一名稱,因此我們無法提供要使用的確切伺服器名稱。 向入口網站輸入 mysqlserver12345 之類的名稱,可知道名稱是否可用。
- 伺服器管理員登入:輸入 azureuser。
- 密碼:輸入符合需求的密碼,然後在 [確認密碼] 欄位中再次輸入。
- 位置:從下拉式清單中選取位置。
選取 [確定]。
在 [計算 + 儲存體] 底下,選取 [設定資料庫]。
本快速入門會建立超大規模資料庫。 在 [服務層級] 選取 [超大規模資料庫]。
在 [計算硬體] 下,選取 [變更組態]。 檢查可用的硬體組態,並為您的資料庫選取最適當的組態。 在此範例中,我們將會選取 [標準系列 (Gen5)] 組態。
選取 [確定] 以確認硬體產生。
如果想要增加資料庫的虛擬核心數目,可以選擇性地調整虛擬核心滑桿。 在此範例中會選取 2 個虛擬核心。
調整 [高可用性次要複本] 滑桿,以建立一個高可用性 (HA) 複本。
選取 [套用]。
在建立超大規模資料庫時,請仔細考慮備份儲存體備援的組態選項。 只能在超大規模資料庫的資料庫建立程式期間指定儲存體備援。 您可以選擇本地備援、區域備援或異地備援儲存體。 選取的儲存體備援選項將用於資料庫的存留期,以進行資料儲存體備援和備份儲存體備援。 現有的資料庫可以使用資料庫複製或時間點還原,移轉至不同的儲存體備援。
完成時,選取 [下一步:網路功能],為於頁面底部。
在網路功能索引標籤的連線方法中,選取 [公用端點]。
針對 [防火牆規則],將 [新增目前的用戶端 IP 位址] 設定為 [是]。 將 [允許 Azure 服務和資源存取此伺服器] 設定為 [否]。
選取頁面底部的 [下一步:安全性]。
或者,啟用適用於 SQL 的 Microsoft Defender。
完成時,選取 [下一步:其他設定],位於頁面底部。
在 [其他設定] 索引標籤的 [資料來源] 區段中,針對 [使用現有的資料],選取 [範例]。 這會建立 AdventureWorksLT 範例資料庫,同時提供一些可供查詢和實驗的資料表和資料,而不是空的空白資料庫。
選取頁面底部的 [檢閱 + 建立]:
檢閱 [檢閱 + 建立] 頁面之後,選取 [建立]。
此區段中的 Azure CLI 程式碼區塊會建立資源群組、伺服器、單一資料庫,以及適用於伺服器存取的伺服器層級 IP 防火牆規則。 請務必記錄所產生的資源群組和伺服器名稱,以便您稍後可以管理這些資源。
如果您沒有 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 函式來建立伺服器名稱。
在執行範例程式碼之前,請根據您的環境適當變更 location
。 使用 IP 位址範圍取代 0.0.0.0
,以符合您的特定環境。 使用您所用電腦的公用 IP 位址,限制只有您的 IP 位址才能存取伺服器。
# <FullScript>
# Create a single database and configure a firewall rule
# <SetParameterValues>
# 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
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroupName="myResourceGroup"
tag="create-and-configure-database"
serverName="mysqlserver-$randomIdentifier"
databaseName="mySampleDatabase"
login="azureuser"
password="<password>-$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 $resourceGroupName with login: $login, password: $password..."
建立資源群組
使用 az group create 命令來建立資源群組。 Azure 資源群組是在其中部署與管理 Azure 資源的邏輯容器。 下列範例會在先前步驟中為 location
參數指定的位置中建立資源群組:
echo "Creating $resourceGroupName in $location..."
az group create --name $resourceGroupName --location "$location" --tag $tag
建立伺服器
使用 az sql server create 命令建立邏輯伺服器。
echo "Creating $serverName in $location..."
az sql server create --name $serverName --resource-group $resourceGroupName --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 $resourceGroupName --server $serverName -n AllowYourIp --start-ip-address $startIp --end-ip-address $endIp
建立單一資料庫
在超大規模資料庫服務層級中使用 az sql db create 命令建立資料庫。
建立超大規模資料庫時,請仔細考慮 backup-storage-redundancy
的設定。 只能在超大規模資料庫的資料庫建立程式期間指定儲存體備援。 您可以選擇本地備援、區域備援或異地備援儲存體。 選取的儲存體備援選項將用於資料庫的存留期,以進行資料儲存體備援和備份儲存體備援。 現有的資料庫可以使用資料庫複製或時間點還原,移轉至不同的儲存體備援。 backup-storage-redundancy
參數的允許值為:Local
、Zone
和 Geo
。 除非明確指定,否則會設定資料庫以使用異地備援備份儲存體。
請執行下列命令,以建立填入 AdventureWorksLT 範例資料的超大規模資料庫。 資料庫使用具有 2 個虛擬核心的標準系列 (Gen5) 硬體。 會對資料庫使用異地備援備份儲存體。 此命令也會建立一個高可用性 (HA) 複本。
az sql db create \
--resource-group $resourceGroupName \
--server $serverName \
--name $databaseName \3
--sample-name AdventureWorksLT \
--edition Hyperscale \
--compute-model Provisioned \
--family Gen5 \
--capacity 2 \
--backup-storage-redundancy Geo \
--ha-replicas 1
您可以使用 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 來建立伺服器名稱。
在執行範例程式碼之前,請根據您的環境適當變更 location
。 使用 IP 位址範圍取代 0.0.0.0
,以符合您的特定環境。 使用您所用電腦的公用 IP 位址,限制只有您的 IP 位址才能存取伺服器。
# Set variables for your server and database
$resourceGroupName = "myResourceGroup"
$location = "eastus"
$adminLogin = "azureuser"
$password = "<password>-$(Get-Random)"
$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
Write-host "Password is" $password
建立資源群組
使用 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
建立單一資料庫
使用 New-AzSqlDatabase Cmdlet 建立單一資料庫。
建立超大規模資料庫時,請仔細考慮 BackupStorageRedundancy
的設定。 只能在超大規模資料庫的資料庫建立程式期間指定儲存體備援。 您可以選擇本地備援、區域備援或異地備援儲存體。 選取的儲存體備援選項將用於資料庫的存留期,以進行資料儲存體備援和備份儲存體備援。 現有的資料庫可以使用資料庫複製或時間點還原,移轉至不同的儲存體備援。 BackupStorageRedundancy
參數的允許值為:Local
、Zone
和 Geo
。 除非明確指定,否則會設定資料庫以使用異地備援備份儲存體。
請執行下列命令,以建立填入 AdventureWorksLT 範例資料的超大規模資料庫。 資料庫使用具有 2 個虛擬核心的標準系列 (Gen5) 硬體。 會對資料庫使用異地備援備份儲存體。 此命令也會建立一個高可用性 (HA) 複本。
Write-host "Creating a standard-series (Gen5) 2 vCore Hyperscale database..."
$database = New-AzSqlDatabase -ResourceGroupName $resourceGroupName `
-ServerName $serverName `
-DatabaseName $databaseName `
-Edition Hyperscale `
-ComputeModel Provisioned `
-ComputeGeneration Gen5 `
-VCore 2 `
-MinimumCapacity 2 `
-SampleName "AdventureWorksLT" `
-BackupStorageRedundancy Geo `
-HighAvailabilityReplicaCount 1
$database
若要使用 Transact-SQL 建立超大規模資料庫,您必須先在 Azure 中建立或識別現有邏輯伺服器的連線資訊。
請使用 SQL Server Management Studio (SSMS)、Azure Data Studio 或您選擇執行 Transact-SQL 命令 (sqlcmd 等) 的用戶端,連線至 master
資料庫。
建立超大規模資料庫時,請仔細考慮 BACKUP_STORAGE_REDUNDANCY
的設定。 只能在超大規模資料庫的資料庫建立程式期間指定儲存體備援。 您可以選擇本地備援、區域備援或異地備援儲存體。 選取的儲存體備援選項將用於資料庫的存留期,以進行資料儲存體備援和備份儲存體備援。 現有的資料庫可以使用資料庫複製或時間點還原,移轉至不同的儲存體備援。 BackupStorageRedundancy
參數的允許值為:LOCAL
、ZONE
和 GEO
。 除非明確指定,否則會設定資料庫以使用異地備援備份儲存體。
執行下列 Transact-SQL 命令,以建立具有 Gen5 硬體、2 個虛擬核心和異地備援備份儲存體的新超大規模資料庫。 您必須在 CREATE DATABASE
陳述式中指定版本和服務目標。 如需有效的服務目標清單,請參閱資源限制,例如 HS_Gen5_2
。
此範例程式碼會建立空資料庫。 如果您想要建立具有範例資料的資料庫,請使用本快速入門中的 Azure 入口網站、Azure CLI 或 PowerShell 範例。
CREATE DATABASE [myHyperscaleDatabase]
(EDITION = 'Hyperscale', SERVICE_OBJECTIVE = 'HS_Gen5_2') WITH BACKUP_STORAGE_REDUNDANCY= 'LOCAL';
GO
如需更多參數和選項,請參閱 CREATE DATABASE (Transact-SQL)。
若要將一或多個高可用性 (HA) 複本新增至資料庫,請使用 Azure 入口網站中該資料庫的 [計算和儲存體] 窗格、Set-AzSqlDatabase PowerShell 命令或 az sql db update Azure CLI 命令。