Comportamento predefinito della connessione al client
Dopo che SQL Server Native Client è stato installato in un computer client, il client è subito pronto per connettersi a un'istanza del Motore di database. Nella maggioranza dei casi, un client SQL Server non necessita di alcuna configurazione particolare per connettersi a un'istanza del Motore di database. Le uniche informazioni che l'applicazione client deve specificare sono il nome del computer e il nome dell'istanza. Se il servizio SQL Server Browser non è in esecuzione sul server, è necessario specificare un endpoint di connessione (porta TCP/IP o named pipe) per la connessione a un'istanza denominata.
Nota
I protocolli di rete del server non sono abilitati per impostazione predefinita. Per ulteriori informazioni, vedere Procedura: Abilitazione o disabilitazione di un protocollo di rete del server (Gestione configurazione SQL Server).
Connessione in locale al server
Quando si stabilisce una connessione al Motore di database da un client locale (l'applicazione client e SQL Server si trovano sullo stesso computer), la connessione utilizza il protocollo Shared Memory per impostazione predefinita. In SQL Server Native Client sono ammessi i formati seguenti per la connessione locale mediante il protocollo Shared Memory:
"<computer_name>"
"<computer_name>\<instance_name>" per un'istanza denominata
"(local)"
"(local)\<instance_name>" per un'istanza denominata
"Localhost"
"localhost\<instance_name>" per un'istanza denominata
Un solo punto "."
".\<instance_name>" per un'istanza denominata
Per stabilire una connessione locale mediante un altro protocollo (per la risoluzione dei problemi), eseguire una delle operazioni seguenti con il protocollo abilitato:
Connettersi a un alias per il client che specifica un protocollo. Per ulteriori informazioni, vedere l'argomento relativo agli alias nella Guida di Gestione configurazione SQL Server.
Anteporre il protocollo al nome del computer (ad esempio, "np:<computer_name>" o"tcp:<computer_name>").
Connettersi all'indirizzo IP per ottenere una connessione TCP/IP.
Connettersi al nome di dominio completo per ottenere una connessione TCP/IP (ad esempio, "<computer_name>.<domain_name>.com").
Verifica del protocollo di connessione
La query seguente restituisce il protocollo utilizzato per la connessione corrente.
SELECT net_transport
FROM sys.dm_exec_connections
WHERE session_id = @@SPID;
Connessione sulla rete
Per impostazione predefinita, il protocollo predefinito per i client SQL Server è TCP/IP. Se non è possibile eseguire la connessione utilizzando TCP/IP, viene tentato l'utilizzo degli altri protocolli abilitati. Una connessione di memoria condivisa non può essere eseguita su una rete. Utilizzare Gestione configurazione SQL Server per abilitare o disabilitare i protocolli client e per modificare l'ordine dei tentativi di connessione.
Compatibilità con versioni precedenti di SQL Server
L'istanza predefinita di SQL Server resta in attesa sugli stessi indirizzi di rete delle versioni precedenti di SQL Server, inclusi Microsoft SQL Server 2000 e Microsoft SQL Server 7.0. Le applicazioni che utilizzano versioni precedenti dei componenti di connettività client possono continuare a connettersi all'istanza predefinita senza modifiche. Le istanze denominate di SQL Server restano in attesa su porte dinamiche. I computer client che utilizzano versioni precedenti dei componenti di connettività client devono essere impostati per eseguire la connessione a questi indirizzi. Per ulteriori informazioni, vedere Procedura: Creazione di un alias server per l'utilizzo da parte di un client (SQL Server Configuration Manager).
Se un client SQL Server Native Client o MDAC (Microsoft Data Access Components) è già installato, le impostazioni relative al protocollo vengono mantenute. Per le nuove installazioni, tutti i protocolli sono abilitati sul client eccetto VIA e ne viene tentato l'utilizzo nell'ordine seguente: Shared Memory, TCP, named pipe.
Importante |
---|
Il protocollo VIA è deprecato. Questa caratteristica verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server. Evitare di utilizzare questa caratteristica in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. |
Per connettersi a un'istanza denominata, è necessario che i client MDAC siano aggiornati almeno a MDAC 2.6.
Nota
Per una sicurezza maggiore, la connettività TCP/IP viene disabilitata in SQL Server per le nuove installazioni delle versioni Developer, Evaluation e SQL Server Express. Le applicazioni OLEDB che si connettono tramite MDAC 2.8 non saranno in grado di connettersi all'istanza predefinita sul server locale utilizzando ".", "(local)" o (<blank>) come nome del server. Per risolvere il problema, specificare il nome del server o abilitare il TCP/IP sul server. Questo non ha effetto sulle connessioni alle istanze locali denominate né sulle connessioni che utilizzano SQL Server Native Client. L'operazione potrebbe non avere effetto sulle installazioni in cui è presente una precedente installazione di SQL Server.