Mempelajari database SQL tunggal

Selesai

Kita akan melihat beberapa metode untuk menyebarkan Azure SQL Database tunggal.

Menyebarkan melalui portal

Proses untuk membuat database tunggal melalui portal Microsoft Azure sangat terus terang. Ketika berada di portal, pada menu navigasi di sebelah kiri, pilih "SQL Database". Dalam dialog slide keluar yang dihasilkan, klik "Buat":

The Azure portal Azure SQL Database Deployment screen

Pada bilah pada gambar di bawah ini, Anda akan melihat bahwa langganan harus sudah disediakan untuk Anda. Anda harus memberikan informasi berikut:

  • Grup Sumber Daya – Jika terdapat grup sumber daya yang ada yang ingin Anda gunakan, Anda dapat memilihnya dari daftar drop-down. Anda dapat mengklik opsi "Buat baru" jika Anda ingin membuat grup sumber daya baru untuk Azure SQL Database ini.
  • Nama Database – Anda harus memberikan nama database.
  • Server – Setiap database harus berada di server logis. Jika Anda memiliki yang sudah ada di wilayah yang sesuai, Anda dapat memilih untuk menggunakannya. Jika tidak, Anda dapat mengklik Buat baru dan mengikuti perintah untuk membuat server logis baru untuk menampung database.
  • Ingin menggunakan kumpulan elastis SQL? – Tentukan apakah akan menggunakan kumpulan elastis atau tidak.
  • Komputasi + penyimpanan – Tentukan sumber daya komputasi yang sesuai yang diperlukan. Secara default, sumber daya komputasi ini adalah Gen5, 2vCore, dengan penyimpanan 32 GB hingga sumber daya komputasi lain dipilih. Klik Konfigurasi database untuk melihat opsi konfigurasi alternatif.

Create SQL Database blade of Azure portal

Gambar di bawah ini menunjukkan bilah portal tempat Anda dapat mengonfigurasi opsi database. Di sini Anda akan melihat bahwa tingkat layanan adalah Tujuan Umum dan tingkat komputasi adalah Diprovisi. Diprovisi menandakan bahwa sumber daya komputasi dialokasikan sebelumnya dan ditagih per jamnya berdasarkan jumlah vCore yang dikonfigurasi. Opsi lainnya adalah Tanpa Server, yang dibahas sebelumnya. Tanpa Server ditagih per detik berdasarkan jumlah vCore yang digunakan.

Service Tier selection in Azure portal

Menyebarkan Azure SQL Database melalui PowerShell/CLI

Anda juga dapat menyebarkan database Anda menggunakan Azure PowerShell atau Azure CLI. Gambar di bawah ini menunjukkan contoh PowerShell tempat Anda membuat grup sumber daya baru, dan menentukan admin yang disebut SqlAdmin, lalu membuat server, database, dan aturan firewall baru.

# Connect-AzAccount

# The SubscriptionId in which to create these objects
$SubscriptionId = ''

# Set the resource group name and location for your server
$resourceGroupName = "myResourceGroup-$(Get-Random)"
$location = "westus2"

# Set an admin login and password for your server
$adminSqlLogin = "SqlAdmin"
$password = "ChangeYourAdminPassword1"

# Set server name - the logical server name has to be unique in the system
$serverName = "server-$(Get-Random)"

# The sample database name
$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"

# Set subscription
Set-AzContext -SubscriptionId $subscriptionId

# Create a resource group
$resourceGroup = New-AzResourceGroup -Name $resourceGroupName -Location $location

# Create a server with a system wide unique server name
$server = New-AzSqlServer -ResourceGroupName $resourceGroupName `
 -ServerName $serverName `
 -Location $location `
 -SqlAdministratorCredentials $(New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $adminSqlLogin, $(ConvertTo-SecureString -String $password -AsPlainText -Force))

# Create a server firewall rule that allows access from the specified IP range

$serverFirewallRule = New-AzSqlServerFirewallRule -ResourceGroupName $resourceGroupName `
 -ServerName $serverName `
 -FirewallRuleName "AllowedIPs" -StartIpAddress $startIp -EndIpAddress $endIp

# Create a blank database with an S0 performance level

$database = New-AzSqlDatabase -ResourceGroupName $resourceGroupName `
 -ServerName $serverName `
 -DatabaseName $databaseName `
 -RequestedServiceObjectiveName "S0" `
 -SampleName "AdventureWorksLT"

Azure CLI juga dapat digunakan untuk menyebarkan Azure SQL Database seperti yang ditunjukkan di bawah ini:

#!/bin/bash

# set execution context (if necessary)
az account set --subscription <replace with your subscription name or id>

# Set the resource group name and location for your server
resourceGroupName=myResourceGroup-$RANDOM
location=westus2

# Set an admin login and password for your database
adminlogin=ServerAdmin
password=`openssl rand -base64 16`

# password=<EnterYourComplexPasswordHere1>

# The logical server name has to be unique in all of Azure 
servername=server-$RANDOM

# The ip address range that you want to allow to access your DB
startip=0.0.0.0
endip=0.0.0.0

# Create a resource group
az group create \
 --name $resourceGroupName \
 --location $location

# Create a logical server in the resource group
az sql server create \
 --name $servername \
 --resource-group $resourceGroupName \
 --location $location \
 --admin-user $adminlogin \
 --admin-password $password

# Configure a firewall rule for the server

az sql server firewall-rule create \
 --resource-group $resourceGroupName \
 --server $servername \
 -n AllowYourIp \
 --start-ip-address $startip \
 --end-ip-address $endip

# Create a database in the server
az sql db create \
 --resource-group $resourceGroupName \
 --server $servername 
 --name mySampleDatabase \
 --sample-name AdventureWorksLT \
 --edition GeneralPurpose \
 --family Gen4 \
 --capacity 1 \

# Echo random password
echo $password

Menyebarkan Azure SQL Database Menggunakan templat Azure Resource Manager

Metode lain untuk menyebarkan sumber daya adalah seperti yang disebutkan sebelumnya menggunakan template Azure Resource Manager. Templat Resource Manager memberi kontrol paling terperinci atas sumber daya Anda, dan Microsoft menyediakan repositori GitHub yang disebut "Templat-Mulai-Cepat-Azure", yang menghosting templat Azure Resource Manager yang dapat Anda referensikan dalam penyebaran Anda. Contoh PowerShell untuk menyebarkan template berbasis GitHub diperlihatkan di bawah ini:

#Define Variables for parameters to pass to template
$projectName = Read-Host -Prompt "Enter a project name"
$location = Read-Host -Prompt "Enter an Azure location (i.e. centralus)"
$adminUser = Read-Host -Prompt "Enter the SQL server administrator username"
$adminPassword = Read-Host -Prompt "Enter the SQl server administrator password" -AsSecureString
$resourceGroupName = "${projectName}rg"

#Create Resource Group and Deploy Template to Resource Group
New-AzResourceGroup -Name $resourceGroupName -Location $location

New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName `
 -TemplateUri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-sql-logical-server/azuredeploy.json" `
 -administratorLogin $adminUser -administratorLoginPassword $adminPassword

Read-Host -Prompt "Press [ENTER] to continue ..."