Connettersi a una macchina virtuale di SQL Server in Azure

Si applica a: SQL Server nella macchina virtuale di Azure

Panoramica

Questo argomento descrive come connettersi all'istanza di SQL in una macchina virtuale di Azure. Presenta alcuni scenari di connettività generali e quindi descrive i passaggi per la modifica delle impostazioni di connettività da eseguire nel portale. Se è necessario risolvere problemi o configurare la connettività esternamente al portale, vedere la sezione relativa alla configurazione manuale alla fine di questo argomento.

Per una procedura dettagliata completa del provisioning e della connettività, vedere Provisioning di una macchina virtuale di SQL Server in Azure.

Scenari di connessione

Il modo in cui un client si connette a una macchina virtuale di SQL Server varia a seconda della posizione del client e della configurazione di rete.

Se si esegue il provisioning di una VM di SQL Server nel portale di Azure, è possibile specificare il tipo di connettività SQL.

Opzione di connettività SQL pubblica durante il provisioning

Le opzioni per la connettività sono:

Opzione Descrizione
Pubblica Connettersi a SQL Server tramite Internet.
Privata Connettersi a SQL Server nella stessa rete virtuale.
Locale Connettersi a SQL Server in locale sulla stessa macchina virtuale.

Le sezioni seguenti illustrano le opzioni Pubblica e Privata in modo più dettagliato.

Connettersi a SQL Server tramite Internet

Per connettersi al motore di database di SQL Server da Internet, durante il provisioning selezionare il tipo di Connettività SQLPubblica nel portale. Il portale esegue automaticamente la procedura seguente:

  • Abilita il protocollo TCP/IP per SQL Server.
  • Configura una regola del firewall per l'apertura della porta TCP di SQL Server (valore predefinito 1433).
  • Abilita l'autenticazione di SQL Server, necessaria per l'accesso pubblico.
  • Configura il gruppo di sicurezza di rete nella VM su tutto il traffico TCP sulla porta di SQL Server.

Importante

Le immagini delle macchine virtuali per SQL Server Express Edition e SQL Server Developer Edition non abilitano automaticamente il protocollo TCP/IP. Per Developer Edition ed Express Edition è necessario usare Gestione configurazione SQL Server per abilitare manualmente il protocollo TCP/IP dopo avere creato la VM.

Tutti i client con accesso a Internet potranno connettersi all'istanza di SQL Server specificando l'indirizzo IP pubblico della macchina virtuale o l'eventuale etichetta DNS assegnata a tale indirizzo IP. Se la porta di SQL Server è 1433, non è necessario specificarla nella stringa di connessione. La stringa di connessione seguente consente la connessione a una VM SQL con etichetta DNS corrispondente a sqlvmlabel.eastus.cloudapp.azure.com tramite l'autenticazione SQL (è anche possibile usare l'indirizzo IP pubblico).

Server=sqlvmlabel.eastus.cloudapp.azure.com;Integrated Security=false;User ID=<login_name>;Password=<your_password>

Anche se questa stringa abilita la connettività per i client tramite Internet, non significa che chiunque può connettersi all'istanza di SQL Server. I client esterni dovranno usare il nome utente e la password corretti. Per maggiore sicurezza, tuttavia, è possibile evitare la porta 1433 nota. Se ad esempio SQL Server è configurato per l'ascolto sulla porta 1500 e sono state stabilite regole del gruppo di sicurezza di rete e del firewall corrette, è possibile connettersi aggiungendo il numero di porta al nome del server. L'esempio seguente modifica il precedente tramite l'aggiunta del numero di porta personalizzato 1500 al nome del server:

Server=sqlvmlabel.eastus.cloudapp.azure.com,1500;Integrated Security=false;User ID=<login_name>;Password=<your_password>"

Nota

Quando si invia una query a SQL Server in una macchina virtuale via Internet, tutti i dati in uscita dal data center di Azure sono soggetti ai normali prezzi dei trasferimenti di dati in uscita.

Connettersi a SQL Server all'interno di una rete virtuale

Se nel portale si sceglie Privata in Connettività SQL, Azure configura la maggior parte delle impostazioni in modo identico rispetto a Pubblica. L'unica differenza è l'assenza di una regola del gruppo di sicurezza di rete che consente il traffico esterno sulla porta di SQL Server (valore predefinito 1433).

Importante

Le immagini delle macchine virtuali per SQL Server Express Edition e SQL Server Developer Edition non abilitano automaticamente il protocollo TCP/IP. Per Developer Edition ed Express Edition è necessario usare Gestione configurazione SQL Server per abilitare manualmente il protocollo TCP/IP dopo avere creato la VM.

La connettività privata viene spesso usata in combinazione con una rete virtuale, che consente diversi scenari. È possibile connettere le VM nella stessa rete virtuale, anche se si trovano in gruppi di risorse diversi. Con una VPN da sito a sitoè possibile creare un'architettura ibrida che connette le macchine virtuali a computer e reti locali.

Le reti virtuali consentono inoltre di aggiungere le macchine virtuali di Azure a un dominio. Si tratta dell'unico modo per usare l'autenticazione di Windows per SQL Server. Gli altri scenari di connessione richiedono l'autenticazione SQL con nomi utente e password.

Presupponendo che il DNS sia stato configurato nella rete virtuale, è possibile connettersi all'istanza di SQL Server specificando il nome computer della VM di SQL Server nella stringa di connessione. L'esempio seguente presuppone che sia stata configurata l'autenticazione di Windows e che all'utente sia stato concesso l'accesso all'istanza di SQL Server.

Server=mysqlvm;Integrated Security=true

Modificare le impostazioni di connettività SQL

È possibile modificare le impostazioni di connettività per la macchina virtuale di SQL Server nel portale di Azure.

  1. Nel portale di Azure selezionare Macchine virtuali SQL.

  2. Selezionare la VM di SQL Server.

  3. In Impostazioni selezionare Configurazione di sicurezza.

  4. Modificare il valore di Livello di connettività SQL sull'impostazione necessaria. Facoltativamente, è possibile usare quest'area per modificare la porta di SQL Server o le impostazioni di autenticazione SQL.

    Modificare la connettività SQL

  5. Attendere qualche minuto che l'aggiornamento venga completato.

    Notifica dell'aggiornamento della VM SQL

Abilitare TCP/IP per le edizioni Developer ed Express

Quando si modificano le impostazioni di connettività di SQL Server, per SQL Server Developer Edition ed Express Edition Azure non abilita automaticamente il protocollo TCP/IP. La procedura seguente illustra come abilitare manualmente TCP/IP per potersi connettere in remoto in base all'indirizzo IP.

Connettersi prima alla macchina virtuale di SQL Server tramite desktop remoto.

  1. Dopo che la macchina virtuale di Azure è stata creata ed è in esecuzione, fare clic sull'icona di Macchine virtuali nel portale di Azure per visualizzare le VM.

  2. Fare clic sui puntini di sospensione, ..., per la nuova VM.

  3. Fare clic su Connetti.

    Connettersi alla VM nel portale

  4. Aprire il file RDP scaricato dal browser per la VM.

  5. La Connessione Desktop remoto invia una notifica che indica che l'autore della connessione remota non può essere identificato. Fare clic su Connetti per continuare.

  6. Nella finestra di dialogo Sicurezza di Windows fare clic su Usa un account diverso. Potrebbe essere necessario fare clic su Altre opzioni per visualizzare l'opzione. Specificare il nome utente e la password configurati durante la creazione della VM. È necessario aggiungere una barra rovesciata prima del nome utente.

    Autenticazione di Desktop remoto

  7. Fare clic su OK per connettersi.

Abilitare quindi il protocollo TCP/IP con Gestione configurazione SQL Server.

  1. Durante la connessione alla macchina virtuale con Desktop remoto, cercare Gestione configurazione:

    Apertura di SQL Server Management Studio

  2. Nel riquadro della console di Gestione configurazione SQL Server espandere Configurazione di rete SQL Server.

  3. Nel riquadro della console fare clic su Protocolli per MSSQLSERVER (nome istanza predefinito). Nel riquadro dei dettagli fare clic con il pulsante destro del mouse su TCP e scegliere Abilita se non è già abilitato.

    Abilitazione del protocollo TCP

  4. Nel riquadro della console fare clic su Servizi di SQL Server. Nel riquadro dei dettagli fare clic con il pulsante destro del mouse su SQL Server (nome istanza) (l'istanza predefinita è SQL Server (MSSQLSERVER)) e quindi scegliere Riavvia per arrestare e riavviare l'istanza di SQL Server.

    Riavvio del motore di database

  5. Chiudere Gestione configurazione SQL Server.

Per ulteriori informazioni su come abilitare i protocolli per il motore di database di SQL Server, vedere Abilitare o disabilitare un protocollo di rete del server.

Connettersi a SSMS

La procedura seguente illustra come creare un'etichetta DNS facoltativa per la macchina virtuale di Azure e quindi come connettersi con SQL Server Management Studio (SSMS).

Configurare un'etichetta DNS per l'indirizzo IP pubblico

Per connettersi al motore di database di SQL Server da Internet, prendere in considerazione la possibilità di configurare un'etichetta DNS per l'indirizzo IP pubblico. È possibile connettersi tramite l'indirizzo IP, ma l'etichetta DNS crea un record A che è più facile da identificare ed estrae l'indirizzo IP pubblico sottostante.

Nota

Le etichette DNS non sono necessarie se si intende connettersi solo all'istanza di SQL Server presente nella stessa rete virtuale o solo in locale.

Per creare un'etichetta DNS, selezionare prima di tutto Macchine virtuali nel portale. Selezionare la propria macchina virtuale di SQL Server per visualizzarne le proprietà.

  1. Nella panoramica della macchina virtuale selezionare l'indirizzo IP pubblico.

    Indirizzo IP pubblico

  2. Nelle proprietà dell'indirizzo IP pubblico espandere Configurazione.

  3. Immettere un nome per l'etichetta DNS. Il nome è un record A che consente di connettersi alla macchina virtuale di SQL Server usando il nome, anziché tramite l'indirizzo IP.

  4. Fare clic sul pulsante Salva.

    Etichetta DNS

Eseguire la connessione al motore di database da un altro computer

  1. In un computer connesso a Internet aprire SQL Server Management Studio (SSMS). Se SQL Server Management Studio non è installato, è possibile scaricarlo qui.

  2. Nella finestra di dialogo Connetti al server o Connetti al motore di database modificare il valore di Nome server. Immettere l'indirizzo IP o il nome DNS completo della macchina virtuale, determinato nell'attività precedente. È anche possibile aggiungere una virgola e specificare la porta TCP di SQL Server. Ad esempio: mysqlvmlabel.eastus.cloudapp.azure.com,1433.

  3. Nella casella Autenticazione selezionare Autenticazione di SQL Server.

  4. Nella casella Accesso digitare il nome di un account di accesso SQL valido.

  5. Nella casella Password digitare la password dell'account di accesso.

  6. Fare clic su Connetti.

    connessione a ssms

Configurazione manuale e risoluzione dei problemi

Benché il portale offra opzioni per la configurazione automatica della connettività, è utile saper configurare manualmente la connettività. Anche l'identificazione dei requisiti può semplificare la risoluzione dei problemi.

La tabella seguente elenca i requisiti per la connessione a SQL Server in una macchina virtuale di Azure.

Requisito Descrizione
Abilitare la modalità di autenticazione di SQL Server L'autenticazione di SQL Server è necessaria per connettersi alla macchina virtuale in remoto, a meno che non sia stato configurato Active Directory in una rete virtuale.
Creare un account di accesso SQL Se si usa l'autenticazione SQL, è necessario un account di accesso SQL con un nome utente e una password che abbia anche le autorizzazioni per il database di destinazione.
Abilitare il protocollo TCP/IP SQL Server deve consentire le connessioni tramite TCP.
Abilitare una regola del firewall per la porta di SQL Server Il firewall nella macchina virtuale deve consentire il traffico in ingresso sulla porta di SQL Server (porta predefinita: 1433).
Creare una regola del gruppo di sicurezza di rete per la porta TCP 1433 È necessario consentire alla macchina virtuale di ricevere il traffico sulla porta di SQL Server (porta predefinita: 1433) se si vuole connettersi tramite Internet. Le connessioni solo a reti virtuali non richiedono questo passaggio. Questo è l'unico passaggio necessario nel portale di Azure.

Suggerimento

I passaggi indicati nella tabella precedente vengono eseguiti automaticamente durante la configurazione della connettività nel portale. Usare questi passaggi solo per confermare la configurazione o per configurare manualmente la connettività per SQL Server.

Passaggi successivi

Per la procedura di configurazione della connettività e del provisioning, vedere Provisioning di una macchina virtuale di SQL Server in Azure.

Per altri argomenti relativi all'esecuzione di SQL Server nelle macchine virtuali di Azure, vedere SQL Server in Macchine virtuali di Azure.