Compartilhar via


Início Rápido: criar o SQL Server na VM do Azure com o PowerShell

Aplica-se a: SQL Server na VM do Azure

Este início rápido apresenta a criação de um Windows SQL Server na Máquina Virtual (VM) do Azure com o Azure PowerShell.

Dica

Pré-requisitos

Para concluir este início rápido, você deverá ter o seguinte:

  • Uma assinatura do Azure. Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
  • A última versão do Azure PowerShell

Observação

Este artigo usa o módulo do PowerShell Azure Az, que é o módulo do PowerShell recomendado para interagir com o Azure. Para começar a usar o módulo do Az PowerShell, confira Instalar o Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.

Conectar-se ao Azure

  1. Abra o PowerShell e estabeleça o acesso à sua conta do Azure executando o comando Connect-AzAccount e defina o contexto de assinatura com Set-AzContext.

    Connect-AzAccount
    Set-AzContext -subscription <Subscription ID>
    
  2. Quando a janela de logon for exibida, insira suas credenciais. Use o mesmo email e senha usados para entrar no Portal do Azure.

Criar um grupo de recursos

Defina variáveis para um nome de grupo de recursos exclusivo e forneça um local de uma região do Azure de destino para todos os recursos de VM. Em seguida, use New-AzResourceGroup para criar seu grupo de recursos. Para simplificar o restante do início rápido, o restante dos comandos usa esse nome como base para outros nomes de recurso.

$ResourceGroupName = "sqlvm1"
$Location = "East US"
$ResourceGroupParams = @{
   Name = $ResourceGroupName
   Location = $Location
   Tag = @{Owner="SQLDocs-Samples"}
}
New-AzResourceGroup @ResourceGroupParams

Definir as configurações de rede

  1. Use New-AzVirtualNetworkSubnetConfig, New-AzVirtualNetwork e New-AzPublicIpAddress para criar uma rede virtual, uma sub-rede e um endereço IP público. Esses recursos são usados para fornecer conectividade de rede para a máquina virtual e conectá-la à 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. Use New-AzNetworkSecurityGroup para criar um grupo de segurança de rede depois de configurar regras para permitir conexões de área de trabalho remota (RDP) e SQL Server com New-AzNetworkSecurityRuleConfig.

    # 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. Crie o adaptador de rede com New-AzNetworkInterface.

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

Criar a VM de SQL

  1. Defina suas credenciais para entrar na VM. O nome de usuário é "azureadmin". Certifique-se de alterar a <senha> antes de executar o comando.

    # Define a credential object
     $userName = "azureadmin"
     $SecurePassword = ConvertTo-SecureString '<strong password>' `
        -AsPlainText -Force
     $Cred = New-Object System.Management.Automation.PSCredential ($userName, $securePassword)
    
  2. Crie um objeto de configuração de máquina virtual com New-AzVMConfig e, em seguida, crie a VM com New-AzVM. O comando a seguir cria uma VM do SQL Server 2022 Developer Edition no Windows Server 2022.

    # 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 "sql2022-ws2022" -Skus "sqldev-gen2" -Version "latest" |
       Add-AzVMNetworkInterface -Id $Interface.Id
    
    # Create the VM
    New-AzVM -ResourceGroupName $ResourceGroupName -Location $Location -VM $VMConfig
    

    Dica

    São necessários vários minutos para criar a VM.

Registrar-se com o RP da VM do SQL

Para obter a integração do portal e os recursos da VM do SQL, registre-se na extensão do Agente de IaaS do SQL.

Para isso, primeiro registre novamente sua assinatura com o provedor de recursos usando o Register-AzResourceProvider.

# Register the SQL IaaS Agent extension to your subscription
Register-AzResourceProvider -ProviderNamespace Microsoft.SqlVirtualMachine

Em seguida, registre sua VM do SQL Server com a extensão do Agente IaaS do SQL usando New-AzSqlVM:

$License = 'PAYG'

# Register SQL Server VM with the extension
New-AzSqlVM -Name $VMName -ResourceGroupName $ResourceGroupName -Location $Location `
-LicenseType $License

Área de trabalho remota na VM

  1. Use Get-AzPublicIpAddress para recuperar o endereço IP público para a nova VM.

    Get-AzPublicIpAddress -ResourceGroupName $ResourceGroupName | Select IpAddress
    
  2. Passe o endereço IP retornado como um parâmetro de linha de comando para mstsc para iniciar uma sessão da Área de Trabalho Remota na nova VM.

    mstsc /v:<publicIpAddress>
    
  3. Quando as credenciais forem solicitadas, opte por inserir as credenciais para uma conta diferente. Insira o nome de usuário precedido de uma barra invertida (por exemplo, \azureadmin) e a senha definida anteriormente neste início rápido.

Conecte-se ao SQL Server

  1. Depois de entrar na sessão da Área de Trabalho Remota, inicie o SQL Server Management Studio 2017 no menu Iniciar.

  2. Na caixa de diálogo Conectar-se ao Servidor, mantenha os padrões. O nome do servidor é o mesmo da VM. A autenticação está definida como Autenticação do Windows. Selecione Conectar.

Agora você está conectado ao SQL Server localmente. Caso deseje se conectar remotamente, configure a conectividade no portal do Azure ou manualmente.

Limpar os recursos

Caso não precise que a VM seja executada continuamente, é possível evitar encargos desnecessários interrompendo-a quando não estiver em uso. O comando a seguir interrompe a VM, mas a deixa disponível para uso futuro.

Stop-AzVM -Name $VMName -ResourceGroupName $ResourceGroupName

Também é possível excluir permanentemente todos os recursos associados à máquina virtual com o comando Remove-AzResourceGroup. Essa ação também excluirá a máquina virtual permanentemente; portanto, use esse comando com cuidado.

Próximas etapas

Nesse guia de início rápido, você criou uma máquina virtual do SQL Server 2022 no Azure PowerShell. Para saber mais sobre como migrar seus dados para o novo SQL Server, consulte o artigo a seguir.