Delen via


PowerShell gebruiken om één database te maken en een firewallregel op serverniveau te configureren

van toepassing op:Azure SQL Database-

In dit Voorbeeld van een Azure PowerShell-script maakt u één database in Azure SQL Database en configureert u een firewallregel op serverniveau. Nadat het script is uitgevoerd, kan de database worden geopend vanuit alle Azure-services en het toegestane IP-adresbereik.

Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.

Notitie

In dit artikel wordt de Azure Az PowerShell-module gebruikt. Dit is de aanbevolen PowerShell-module voor interactie met Azure. Zie Azure PowerShell-installeren om aan de slag te gaan met de Az PowerShell-module. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

Azure Cloud Shell gebruiken

Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell met Cloud Shell gebruiken om te werken met Azure-services. U kunt de vooraf geïnstalleerde Opdrachten van Cloud Shell gebruiken om de code in dit artikel uit te voeren, zonder dat u iets hoeft te installeren in uw lokale omgeving.

Azure Cloud Shell starten:

Optie Voorbeeld/koppeling
Selecteer Nu proberen in de rechterbovenhoek van een codeblok. Als u Try It selecteert, wordt de code niet automatisch gekopieerd naar Cloud Shell. Schermopname met een voorbeeld van Try It for Azure Cloud Shell.
Ga naar https://shell.azure.comof selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. Schermopname van het starten van Cloud Shell in een nieuw venster.
Selecteer de knop Cloud Shell in de menubalk rechtsboven in de Azure Portal. Schermopname van de knop Cloud Shell in Azure Portal

De code uitvoeren in dit artikel in Azure Cloud Shell:

  1. Start Cloud Shell.

  2. Selecteer de knop Kopiëren op een codeblok om de code te kopiëren.

  3. Plak de code in de Cloud Shell-sessie door Ctrl+Shift+V- in Windows en Linux te selecteren of door Cmd+Shift+V- in macOS te selecteren.

  4. Selecteer Voer in om de code uit te voeren.

Als u PowerShell lokaal wilt installeren en gebruiken, is voor deze zelfstudie Az PowerShell 1.4.0 of hoger vereist. Zie Azure PowerShell-module installerenals u een upgrade wilt uitvoeren. Als u PowerShell lokaal uitvoert, moet u ook Connect-AzAccount uitvoeren om een verbinding met Azure te maken.

Voorbeeldscript

# 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"

# Clean up deployment 
# Remove-AzResourceGroup -ResourceGroupName $resourceGroupName

Uitrol opschonen

Gebruik de volgende opdracht om de resourcegroep en alle bijbehorende resources te verwijderen.

Remove-AzResourceGroup -ResourceGroupName $resourcegroupname

Uitleg van script

In dit script worden de volgende opdrachten gebruikt. Elke opdracht in de tabel is een koppeling naar opdracht-specifieke documentatie.

Opdracht Opmerkingen
New-AzResourceGroup Hiermee maakt u een resourcegroep waarin alle resources worden opgeslagen.
New-AzSqlServer Hiermee maakt u een server die als host fungeert voor databases en elastische pools.
New-AzSqlServerFirewallRule Hiermee maakt u een firewallregel op serverniveau voor een server.
New-AzSqlDatabase Hiermee maakt u een database op een server.
Remove-AzResourceGroup Verwijdert een resourcegroep, inclusief alle onderliggende resources.

Beheerde identiteiten configureren

Zie voor meer informatie over de voordelen van het gebruik van een door de gebruiker toegewezen beheerde identiteit voor de serveridentiteit in Azure SQL Database door de gebruiker toegewezen beheerde identiteit in Microsoft Entra ID voor Azure SQL.

Als u de door het systeem toegewezen beheerde identiteit (SMI) of door de gebruiker toegewezen beheerde identiteit of identiteiten (UMI) van een Azure SQL Database wilt configureren, raadpleegt u Een beheerde identiteit ophalen of instellen voor een logische server of beheerd exemplaar.

Volgende stappen

Zie Azure PowerShell-documentatievoor meer informatie over Azure PowerShell.

Meer voorbeelden van SQL Database PowerShell-scripts vindt u in de Azure SQL Database PowerShell-scripts.