Avvio rapido: Creare SQL Server su una macchina virtuale Windows con Azure PowerShell

Si applica a:SQL Server su VM di Azure

Questa guida introduttiva illustra la creazione di una macchina virtuale di SQL Server con Azure PowerShell.

Suggerimento

Ottenere una sottoscrizione di Azure

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

Ottenere Azure PowerShell

Nota

Questo articolo usa il modulo di PowerShell Azure Az consigliato per l'interazione con Azure. Per iniziare a usare il modulo Az PowerShell, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

Configurare PowerShell

  1. Aprire PowerShell e accedere all'account Azure eseguendo il comando Connect-AzAccount.

    Connect-AzAccount
    
  2. Quando viene visualizzata la finestra di accesso, immettere le credenziali. Utilizzare lo stesso indirizzo email e password utilizzati per accedere al portale di Azure.

Creare un gruppo di risorse

  1. Definire una variabile con un nome univoco per il gruppo di risorse. Per semplificare il resto della guida introduttiva, gli altri comandi usano questo nome come base per i nomi delle altre risorse.

    $ResourceGroupName = "sqlvm1"
    
  2. Definire la posizione di un'area di Azure di destinazione per tutte le risorse della macchina virtuale.

    $Location = "East US"
    
  3. Creare il gruppo di risorse.

    New-AzResourceGroup -Name $ResourceGroupName -Location $Location
    

Configurare le impostazioni di rete

  1. Creare una rete virtuale, una subnet e un indirizzo IP pubblico. Queste risorse vengono usate per fornire la connettività di rete alla macchina virtuale e connetterla a Internet.

    $SubnetName = $ResourceGroupName + "subnet"
    $VnetName = $ResourceGroupName + "vnet"
    $PipName = $ResourceGroupName + $(Get-Random)
    
    # Create a subnet configuration
    $SubnetConfig = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix 192.168.1.0/24
    
    # Create a virtual network
    $Vnet = New-AzVirtualNetwork -ResourceGroupName $ResourceGroupName -Location $Location `
       -Name $VnetName -AddressPrefix 192.168.0.0/16 -Subnet $SubnetConfig
    
    # Create a public IP address and specify a DNS name
    $Pip = New-AzPublicIpAddress -ResourceGroupName $ResourceGroupName -Location $Location `
       -AllocationMethod Static -IdleTimeoutInMinutes 4 -Name $PipName
    
  2. Creare un gruppo di sicurezza di rete. Configurare le regole per consentire connessioni RDP (Remote Desktop) e SQL Server.

    # Rule to allow remote desktop (RDP)
    $NsgRuleRDP = New-AzNetworkSecurityRuleConfig -Name "RDPRule" -Protocol Tcp `
       -Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * `
       -DestinationAddressPrefix * -DestinationPortRange 3389 -Access Allow
    
    #Rule to allow SQL Server connections on port 1433
    $NsgRuleSQL = New-AzNetworkSecurityRuleConfig -Name "MSSQLRule"  -Protocol Tcp `
       -Direction Inbound -Priority 1001 -SourceAddressPrefix * -SourcePortRange * `
       -DestinationAddressPrefix * -DestinationPortRange 1433 -Access Allow
    
    # Create the network security group
    $NsgName = $ResourceGroupName + "nsg"
    $Nsg = New-AzNetworkSecurityGroup -ResourceGroupName $ResourceGroupName `
       -Location $Location -Name $NsgName `
       -SecurityRules $NsgRuleRDP,$NsgRuleSQL
    
  3. Creare l'interfaccia di rete.

    $InterfaceName = $ResourceGroupName + "int"
    $Interface = New-AzNetworkInterface -Name $InterfaceName `
       -ResourceGroupName $ResourceGroupName -Location $Location `
       -SubnetId $VNet.Subnets[0].Id -PublicIpAddressId $Pip.Id `
       -NetworkSecurityGroupId $Nsg.Id
    

Creare la macchina virtuale SQL

  1. Definire le credenziali per l'accesso alla macchina virtuale. Il nome utente è "azureadmin". Assicurarsi di modificare la <password> prima di eseguire il comando.

    # Define a credential object
    $SecurePassword = ConvertTo-SecureString '<password>' `
       -AsPlainText -Force
    $Cred = New-Object System.Management.Automation.PSCredential ("azureadmin", $securePassword)
    
  2. Creare un oggetto di configurazione della macchina virtuale e quindi creare la VM. Il comando seguente crea una VM di SQL Server 2017 Developer Edition su Windows Server 2016.

    # Create a virtual machine configuration
    $VMName = $ResourceGroupName + "VM"
    $VMConfig = New-AzVMConfig -VMName $VMName -VMSize Standard_DS13_V2 |
       Set-AzVMOperatingSystem -Windows -ComputerName $VMName -Credential $Cred -ProvisionVMAgent -EnableAutoUpdate |
       Set-AzVMSourceImage -PublisherName "MicrosoftSQLServer" -Offer "SQL2017-WS2016" -Skus "SQLDEV" -Version "latest" |
       Add-AzVMNetworkInterface -Id $Interface.Id
    
    # Create the VM
    New-AzVM -ResourceGroupName $ResourceGroupName -Location $Location -VM $VMConfig
    

    Suggerimento

    La creazione della macchina virtuale richiede alcuni minuti.

Eseguire la registrazione con il provider di risorse delle macchine virtuali SQL

Per ottenere l'integrazione del portale e le funzionalità delle VM SQL, è necessario registrarsi con l'estensione dell'operatore Iaas di SQL.

Desktop remoto nella macchina virtuale

  1. Usare il comando seguente per recuperare l'indirizzo IP pubblico per la nuova VM.

    Get-AzPublicIpAddress -ResourceGroupName $ResourceGroupName | Select IpAddress
    
  2. Passare l'indirizzo IP restituito come parametro della riga di comando a mstsc per avviare una sessione di Desktop remoto nella nuova VM.

    mstsc /v:<publicIpAddress>
    
  3. Quando vengono richieste le credenziali, scegliere di immettere le credenziali per un account diverso. Immettere il nome utente preceduto da una barra rovesciata, ad esempio \azureadmin, e la password impostata in precedenza in questa guida introduttiva.

Connessione a SQL Server

  1. Dopo aver eseguito l'accesso a una sessione di Desktop remoto, avviare SQL Server Management Studio 2017 dal menu Start.

  2. Nella finestra di dialogo Connetti al server mantenere i valori predefiniti. Il nome del server è il nome della VM. L'autenticazione è impostata su Autenticazione di Windows. Selezionare Connetti.

Si è ora connessi localmente a SQL Server. Se ci si vuole connettere in remoto, è necessario configurare la connettività dal portale di Azure o manualmente.

Pulire le risorse

Se non è necessario che la macchina virtuale sia continuamente in esecuzione, è possibile evitare addebiti superflui arrestandola quando non è in uso. Il comando seguente arresta la VM ma la lascia disponibile per un uso futuro.

Stop-AzVM -Name $VMName -ResourceGroupName $ResourceGroupName

È anche possibile eliminare definitivamente tutte le risorse associate alla macchina virtuale con il comando Remove-AzResourceGroup. In questo modo viene eliminata definitivamente anche la macchina virtuale, quindi usare questo comando con cautela.

Passaggi successivi

In questa guida introduttiva sono state illustrate le procedure per creare una macchina virtuale di SQL Server 2017 con Azure PowerShell. Per altre informazioni su come eseguire la migrazione dei dati nella nuova VM di SQL Server, vedere l'articolo seguente.