Risolvere i problemi di connessione al motore di database di SQL ServerTroubleshoot Connecting to the SQL Server Database Engine

In questo argomento si applica a: SìSQL ServernonDatabase SQL di AzurenonAzure SQL Data Warehouse non Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Di seguito sono elencate tutte le tecniche di risoluzione dei problemi che è possibile usare quando non è possibile connettersi al motore di database di SQL Server.This is an exhaustive list of troubleshooting techniques to use when you cannot connect to the SQL Server Database Engine. I passaggi non seguono l'ordine dei problemi più frequenti dei quali probabilmente sono già stati tentati i passaggi.These steps are not in the order of the most likely problems which you probably already tried. I passaggi seguono invece un ordine basato sulla complessità, dai problemi di base ai problemi più complessi.These steps are in order of the most basic problems to more complex problems. Nei passaggi si presuppone che la connessione a SQL Server venga stabilita da un altro computer usando il protocollo TCP/IP, che è la situazione più comune.These steps assume that you are connecting to SQL Server from another computer by using the TCP/IP protocol, which is the most common situation. I passaggi sono stati scritti per SQL Server 2016 con SQL Server e le applicazioni client che eseguono Windows 10. I passaggi tuttavia si applicano in genere alle altre versioni di SQL Server e ad altri sistemi operativi con leggere differenze.These steps are written for SQL Server 2016 with both the SQL Server and the client applications running Windows 10, however the steps generally apply to other versions of SQL Server and other operating systems with only slight modifications.

Le istruzioni fornite risultano particolarmente utili per la risoluzione dell'errore di "connessione al server" con numero di errore 11001 o 53, gravità 20, stato 0 e di messaggi di errore quali:These instructions are particularly useful when troubleshooting the "Connect to Server" error, which can be Error Number: 11001 (or 53), Severity: 20, State: 0, and error messages such as:

  • "Si è verificato un errore di rete o specifico dell'istanza mentre si cercava di stabilire una connessione con SQL Server."A network-related or instance-specific error occurred while establishing a connection to SQL Server. Server non trovato o non accessibile.The server was not found or was not accessible. Verificare che il nome dell'istanza sia corretto e che il server sia configurato in modo da consentire connessioni remote.Verify that the instance name is correct and that SQL Server is configured to allow remote connections. ""

  • "(provider: Provider named pipe, errore: 40 - Impossibile aprire una connessione a SQL Server) (Microsoft SQL Server, Errore: 53)" o "(provider: Provider TCP, errore: 0 - Host sconosciuto.) (Microsoft SQL Server, Errore: 11001)""(provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 53)" or "(provider: TCP Provider, error: 0 - No such host is known.) (Microsoft SQL Server, Error: 11001)"

Questo errore indica in genere che non è possibile trovare il computer SQL Server o che il numero di porta TCP non è noto, non è corretto o è bloccato da un firewall.This error usually means that the SQL Server computer can't be found or that the TCP port number is either not known, or is not the correct port number, or is blocked by a firewall.

Suggerimento

Una pagina di risoluzione interattiva è disponibile dal Supporto Tecnico Microsoft MicrosoftMicrosoft in Risoluzionedei problemi di connettività a SQL Server.An interactive troubleshooting page is available from MicrosoftMicrosoft Customer Support Services at Solving Connectivity errors to SQL Server.

Errori non inclusiNot included

Raccolta di informazioni sull'istanza di SQL ServerGathering Information about the Instance of SQL Server

È necessario innanzitutto raccogliere le informazioni di base sul motore di database.First you must gather basic information about the database engine.

  1. Verificare che l'istanza del motore di database di SQL Server sia installata e in esecuzione.Confirm the instance of the SQL Server Database Engine is installed and running.

    1. Accedere al computer che ospita l'istanza di SQL Server.Logon to the computer hosting the instance of SQL Server.
    2. Avviare Gestione configurazione SQL Server.Start SQL Server Configuration Manager. Gestione configurazione viene installata automaticamente nel computer durante l'installazione di SQL Server.(Configuration Manager is automatically installed on the computer when SQL Server is installed. Le istruzioni per l'avvio di Gestione configurazione variano leggermente a seconda della versione di SQL Server e Windows.Instructions on starting Configuration Manager vary slightly by version of SQL Server and Windows. Per informazioni sull'avvio di Gestione configurazione, vedere Gestione configurazione SQL Server.For help starting Configuration Manager, see SQL Server Configuration Manager.)
    3. In Gestione configurazione nel riquadro sinistro selezionare Servizi di SQL Server.Using Configuration Manager, in the left pane select SQL Server Services. Nel riquadro destro verificare che l'istanza del motore di database sia presente e in esecuzione.In the right-pane confirm that the instance of the Database Engine is present and running. Un'istanza denominata SQL Server (MSSQLSERVER) è un'istanza predefinita (senza nome).An instance named SQL Server (MSSQLSERVER) is a default (unnamed) instance. Può essere presente una sola istanza predefinita.There can only be one default instance. I nomi delle altre istanze con nome sono indicati tra parentesi.Other (named) instances will have their names listed between the parentheses. SQL Server Express usa il nome SQL Server (SQLEXPRESS) come nome di istanza se non viene specificato un nome diverso durante l'installazione.SQL Server Express uses the name SQL Server (SQLEXPRESS) as the instance name unless someone named it something else during installation. Prendere nota del nome dell'istanza a cui si sta tentando di connettersi.Make a note of the name of the instance that you are trying to connect to. Verificare inoltre che l'istanza sia in esecuzione cercando la freccia verde.Also, confirm that the instance is running, by looking for the green arrow. Se l'istanza è contrassegnata con un quadrato rosso, fare clic con il pulsante destro del mouse sull'istanza e quindi fare clic su Avvia.If the instance has a red square, right-click the instance and then click Start. L'istanza verrà contrassegnata in verde.It should turn green.
      1. Se si sta tentando di connettersi a un'istanza denominata, assicurarsi che il servizio SQL Server Browser sia in esecuzione.If you are attempting to connect to a named instance, make sure the SQL Server Browser service is running.
  2. Ottenere l'indirizzo IP del computer.Get the IP Address of the computer.

    1. Nel menu Start fare clic su Esegui.On the Start menu, click Run. Nella finestra Esegui digitare cmde quindi fare clic su OK.In the Run window type cmd, and then click OK.
    2. Nella finestra del prompt dei comandi digitare ipconfig e quindi premere INVIO.In the command prompt window, type ipconfig and then press enter. Prendere nota dell'indirizzo IPv4 e dell'indirizzo IPv6 .Make a note of the IPv4 Address and the IPv6 Address. SQL Server è in grado di stabilire la connessione usando la versione 4 del protocollo IP o la nuova versione 6 del protocollo IP.(SQL Server can connect using the older IP version 4 protocol or the newer IP version 6 protocol. È possibile che la rete supporti uno dei due protocolli o entrambi.Your network could allow either or both. Nella maggior parte dei casi la risoluzione dei problemi viene iniziata con l'indirizzo IPv4 .Most people start by troubleshooting the IPv4 address. che risulta più breve e facile da digitare.It's shorter and easier to type.)
  3. Ottenere il numero di porta TCP usato da SQL Server.Get the TCP port number used by SQL Server. Nella maggior parte dei casi si stabilisce la connessione al motore di database da un altro computer usando il protocollo TCP.In most cases you are connecting to the Database Engine from another computer using the TCP protocol.

    1. Usando SQL Server Management Studio nel computer che esegue SQL Server, connettersi all'istanza di SQL Server.Using SQL Server Management Studio on the computer running SQL Server, connect to the instance of SQL Server. In Esplora oggetti espandere Gestione, espandere Log di SQL Servere fare doppio clic sul log corrente.In Object Explorer, expand Management, expand SQL Server Logs, and then double-click the current log.
    2. Nel Visualizzatore log fare clic sul pulsante Filtro sulla barra degli strumenti.In the Log Viewer, click the Filter button on the toolbar. Nella casella Testo contenuto nel messaggio digitare Il server è in attesa su, fare clic su Applica filtroe quindi fare clic su OK.In the Message contains text box, type server is listening on, click Apply filter, and then click OK.
    3. Viene visualizzato un messaggio simile a Il server è in attesa su [ 'qualsiasi' <ipv4> 1433].A message similar to Server is listening on [ 'any' <ipv4> 1433] should be listed. Questo messaggio indica che l'istanza di SQL Server è in attesa su tutti gli indirizzi IP nel computer in uso (per la versione IP 4) ed è in attesa sulla porta TCP 1433.This message indicates that this instance of SQL Server is listening on all the IP addresses on this computer (for IP version 4) and is listening to TCP port 1433. La porta TCP 1433 è in genere la porta usata dal motore di database.(TCP port 1433 is usually the port used by the Database Engine. Poiché una porta può essere usata da una sola istanza di SQL Server, in presenza di più istanze di SQL Server installate è necessario che alcune istanze usino altri numeri di porta. Prendere nota del numero di porta usato dall'istanza di SQL ServerSQL Server a cui si sta cercando di connettersi.Only one instance of SQL Server can use a port, so if there is more than one instance of SQL Server installed, some instances must use other port numbers.) Make a note of the port number used by the instance of SQL ServerSQL Server that you are trying to connect to.

    Nota

    Verrà probabilmente indicato l'indirizzo IP 127.0.0.1.IP address 127.0.0.1 is probably listed. Si tratta dell'indirizzo della scheda di loopback cui è possibile connettersi soltanto da processi nello stesso computer.It is called the loopback adapter address and can only be connected to from processes on the same computer. Può essere utile per la risoluzione dei problemi, ma non può essere usato per connettersi da un altro computer.It can be useful for troubleshooting, but you can’t use it to connect from another computer.

Abilitare i protocolliEnable Protocols

In alcune installazioni di SQL Server la connessione al motore di database da un altro computer non è abilitata, a meno che non venga abilitata da un amministratore usando Gestione configurazione.In some installations of SQL Server, connecting to the Database Engine from another computer is not enabled unless an administrator uses Configuration Manager to enable it. Per abilitare le connessioni da un altro computer:To enable connections from another computer:

  1. Aprire Gestione configurazione SQL Server come descritto sopra.Open SQL Server Configuration Manager, as described earlier.
  2. In Gestione configurazione nel riquadro sinistro espandere Configurazione di rete SQL Servere quindi selezionare l'istanza di SQL Server a cui si vuole connettersi.Using Configuration Manager, in the left pane expand SQL Server Network Configuration, and then select the instance of SQL Server that you want to connect to. Nel riquadro destro sono elencati i protocolli di connessione disponibili.The right-pane lists the connection protocols available. Il protocollo Shared Memory è in genere abilitato.Shared Memory is normally enabled. Poiché può essere usato solo dallo stesso computer, il protocollo Shared Memory è abilitato nella maggior parte delle installazioni.It can only be used from the same computer, so most installations leave Shared Memory enabled. La connessione a SQL Server da un altro computer avviene in genere tramite TCP/IP.To connect to SQL Server from another computer you will normally use TCP/IP. Se TCP/IP non è abilitato, fare clic con il pulsante destro del mouse su TCP/IPe quindi fare clic su Abilita.If TCP/IP is not enabled, right-click TCP/IP, and then click Enable.
  3. Se si modifica l'impostazione di abilitazione per un protocollo, è necessario riavviare il motore di database.If you changed the enabled setting for any protocol you must restart the Database Engine. Nel riquadro sinistro selezionare Servizi di SQL Server.In the left pane select SQL Server Services. Nel riquadro destro fare clic con il pulsante destro del mouse sull'istanza del motore di database e quindi fare clic su Riavvia.In the right-pane, right-click the instance of the Database Engine, and then click Restart.

Test della connettività TCP/IPTesting TCP/IP Connectivity

Per connettersi a SQL Server tramite TCP/IP è necessario che Windows sia in grado di stabilire la connessione.Connecting to SQL Server by using TCP/IP requires that Windows can establish the connection. Usare lo strumento ping per testare la connettività TCP.Use the ping tool to test TCP.

  1. Nel menu Start fare clic su Esegui.On the Start menu, click Run. Nella finestra Esegui digitare cmde quindi fare clic su OK.In the Run window type cmd, and then click OK.
  2. Nella finestra del prompt dei comandi digitare ping e quindi l'indirizzo IP del computer che esegue SQL Server.In the command prompt window, type ping and then the IP address of the computer that is running SQL Server. Ad esempio, usare ping 192.168.1.101 con un indirizzo IPv4 oppure usare ping fe80::d51d:5ab5:6f09:8f48%11 con un indirizzo IPv6.For example, ping 192.168.1.101 using an IPv4 address, or ping fe80::d51d:5ab5:6f09:8f48%11 using an IPv6 address. Sostituire i numeri dopo il comando ping con gli indirizzi IP nel computer raccolti in precedenza.(You must replace the numbers after ping with the IP addresses on your computer which you gathered earlier.)
  3. Se la rete è configurata correttamente, si riceverà una Risposta da <indirizzo IP> seguita da informazioni aggiuntive.If your network is properly configured you will receive a response such as Reply from <IP address> followed by some additional information. Se si riceve un errore, ad esempio Host di destinazione non raggiungibileIf you receive an error such as Destination host unreachable. o Timeout della richiesta, significa che la connettività TCP/IP non è stata configurata correttamente.or Request timed out. then TCP/IP is not correctly configured. Verificare che l'indirizzo IP sia corretto e digitato correttamente. Gli errori di questo tipo potrebbero indicare un problema del computer client, del computer server o di un componente della rete, ad esempio un router.(Check that the IP address was correct and was correctly typed.) Errors at this point could indicate a problem with the client computer, the server computer, or something about the network such as a router. In Internet sono disponibili diverse risorse per la risoluzione dei problemi della connessione TCP/IP.The internet has many resources for troubleshooting TCP/IP. È possibile ad esempio iniziare con l'articolo del 2006 How to Troubleshoot Basic TCP/IP Problems(Come risolvere i problemi di base TCP/IP).A resonable place to start, is this article from 2006, How to Troubleshoot Basic TCP/IP Problems.
  4. Successivamente, se il test di ping ha esito positivo usando l'indirizzo IP, verificare che il nome del computer possa essere risolto nell'indirizzo TCP/IP.Next, if the ping test succeeded using the IP address, test that the computer name can be resolved to the TCP/IP address. Nella finestra del prompt dei comandi nel computer client digitare ping seguito dal nome del computer che esegue SQL Server.On the client computer, in the command prompt window, type ping and then the computer name of the computer that is running SQL Server. Ad esempio, usare ping newofficepcFor example, ping newofficepc
  5. Se è stato possibile effettuare il ping dell'indirizzo IP, ma successivamente viene visualizzato un errore, come Host di destinazione non raggiungibileIf you could ping the ipaddress, but noww receive an error such as Destination host unreachable. o Timeout della richiesta, è possibile che siano presenti informazioni di risoluzione dei nomi non aggiornate memorizzate nella cache del computer client.or Request timed out. you might have old (stale) name resolution information cached on the client computer. Digitare ipconfig /flushdns per cancellare la cache DNS (Dynamic Name Resolution).Type ipconfig /flushdns to clear the DNS (Dynamic Name Resolution) cache. Quindi eseguire nuovamente il ping del computer per nome.Then ping the computer by name again. Con la cache DNS vuota, il computer client cercherà le informazioni più recenti sull'indirizzo IP del computer server.With the DNS cache empty, the client computer will check for the newest information about the IP address for the server computer.
  6. Se la rete è configurata correttamente, si riceverà una Risposta da <indirizzo IP> seguita da informazioni aggiuntive.If your network is properly configured you will receive a response such as Reply from <IP address> followed by some additional information. Se il ping del computer server con l'indirizzo IP ha esito positivo ma si riceve un errore, ad esempio Host di destinazione non raggiungibileIf you can successfully ping the server computer by IP address but receive an error such as Destination host unreachable. o Timeout della richiesta, quando si esegue il ping con il nome del computer, significa che la risoluzione dei nomi non è configurata correttamente.or Request timed out. when pinging by computer name, then name resolution is not correctly configured. Per altre informazioni, vedere l'articolo del 2006 indicato in precedenza How to Troubleshoot Basic TCP/IP Problems (Come risolvere i problemi di base TCP/IP). Poiché la risoluzione dei nomi non è necessaria per connettersi a SQL Server, se il nome del computer non può essere risolto in un indirizzo IP, è necessario stabilire le connessioni specificando l'indirizzo IP.(For more information, see the 2006 article previously referenced, How to Troubleshoot Basic TCP/IP Problems.) Successful name resolution is not required to connect to SQL Server, but if the computer name cannot be resolved to an IP address, then connections must be made specifying the IP address. Sebbene non sia la soluzione ideale, la risoluzione dei nomi può essere corretta in seguito.This is not ideal, but name resolution can be fixed later.

Test di una connessione localeTesting a Local Connection

Prima di risolvere un problema di connessione da un altro computer, verificare innanzitutto la possibilità di connettersi da un'applicazione client installata nel computer che esegue SQL Server.Before troubleshooting a connection problem from another computer, first test your ability to connect from a client application installed on the computer that is running SQL Server. In questo modo sarà possibile evitare i problemi del firewall. In questa procedura viene usato SQL Server Management Studio.(This will keep firewall issues out of the way.) This procedure uses SQL Server Management Studio. Se Management Studio non è installato, vedere Scaricare SQL Server Management Studio (SSMS).If you do not have Management Studio installed, see Download SQL Server Management Studio (SSMS). Se non si è in grado di installare Management Studio, è possibile testare la connessione usando l'utilità sqlcmd.exe che viene installata con il motore di database.(If you are not able to install Management Studio, you can test the connection using the sqlcmd.exe utility which is installed with the Database Engine. Per altre informazioni su sqlcmd.exe, vedere Utilità sqlcmd.For information about sqlcmd.exe, see sqlcmd Utility.)

  1. Accedere al computer in cui è installato SQL Server usando un account che dispone dell'autorizzazione per accedere a SQL Server.Logon to the computer where SQL Server is installed, using a login that has permission to access SQL Server. Durante l'installazione, SQL Server richiede almeno un accesso come amministratore di SQL Server.(During installation, SQL Server requires at least one login to be specified as a SQL Server Administrator. Se non si conosce un amministratore, vedere Connettersi a SQL Server se gli amministratori di sistema sono bloccati.If you do not know an administrator, see Connect to SQL Server When System Administrators Are Locked Out.)
  2. Nella pagina iniziale digitare SQL Server Management Studiooppure nelle versioni precedenti di Windows nel menu Start scegliere Tutti i programmi, quindi scegliere Microsoft SQL Servere fare clic su SQL Server Management Studio.On the Start page, type SQL Server Management Studio, or on older versions of Windows on the Start menu, point to All Programs, point to Microsoft SQL Server, and then click SQL Server Management Studio.
  3. Nella finestra di dialogo Connetti al server selezionare Motore di database nella casella Tipo di server.In the Connect to Server dialog box, in the Server type box, select Database Engine. Nella casella Autenticazione selezionare Autenticazione di Windows.In the Authentication box, select Windows Authentication. Nella casella Nome server digitare una delle opzioni seguenti:In the Server name box, type one of the following:
Connessione a:Connecting to: Tipo:Type: Esempio:Example:
Istanza predefinitaDefault instance Nome del computerThe computer name ACCNT27ACCNT27
Istanza denominataNamed Instance Nome del computer\nome dell'istanzaThe computer name\instance name ACCNT27\PAYROLLACCNT27\PAYROLL

Nota

Per la connessione a SQL Server da un'applicazione client nello stesso computer viene usato il protocollo Shared Memory.When connecting to a SQL Server from a client application on the same computer, the shared memory protocol is used. Poiché Shared Memory è un tipo di named pipe locale, a volte si verificano errori relativi alle pipe.Shared memory is a type of local named pipe, so sometimes errors regarding pipes are encountered.

Se si verifica un errore in questa fase, è necessario risolverlo prima di procedere.If you receive an error at this point, you will have to resolve it before proceeding. Possono verificarsi diversi tipi di problemi.There are many possible things that could be a problem. È possibile che l'account di accesso non sia autorizzato a connettersi.Your login might not be authorized to connect. Il database predefinito potrebbe non essere disponibile.Your default database might be missing.

Nota

Alcuni messaggi di errore passati al client non forniscano intenzionalmente informazioni sufficienti per risolvere il problema.Some error messages passed to the client intentionally do not give enough information to troubleshoot the problem. Si tratta di una misura di sicurezza per evitare di fornire informazioni su SQL Server a un utente malintenzionato.This is a security feature to avoid providing an attacker with information about SQL Server. Per visualizzare informazioni complete sull'errore, esaminare il log degli errori di SQL Server.To view the complete information about the error, look in the SQL Server error log. Il log contiene informazioni dettagliate.The details are provided there. Se si verifica l'errore 18456 L'accesso non è riuscito per l'utente, vedere l'argomento MSSQLSERVER_18456 della documentazione online che include informazioni aggiuntive sui codici di errore.If you are receiving error 18456 Login failed for user, Books Online topic MSSQLSERVER_18456 contains additional information about error codes. Un blog di Aaron Bertrand include un elenco completo dei codici di errore in Troubleshooting Error 18456(Risoluzione dell'errore 18456).And Aaron Bertrand's blog has a very extensive list of error codes at Troubleshooting Error 18456. Se si è in grado di stabilire la connessione, è possibile visualizzare il log degli errori con SSMS nella sezione Gestione di Esplora oggetti.You can view the error log with SSMS (if you can connect), in the Management section of the Object Explorer. In caso contrario, è possibile visualizzare il log degli errori con il Blocco note di Windows.Otherwise, you can view the error log with the Windows Notepad program. Il percorso predefinito varia in base alla versione e può essere modificato durante l'installazione.The default location varies with your version and can be changed during setup. Il percorso predefinito per SQL Server 2016SQL Server 2016 è C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Log\ERRORLOG.The default location for SQL Server 2016SQL Server 2016 is C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Log\ERRORLOG.

  1. Se è possibile connettersi tramite Shared Memory, testare la connessione usando TCP.If you can connect using shared memory, test connecting using TCP. È possibile forzare una connessione TCP specificando tcp: prima del nome.You can force a TCP connection by specifying tcp: before the name. Esempio:For example:
Connessione a:Connecting to: Tipo:Type: Esempio:Example:
Istanza predefinitaDefault instance tcp: nome del computertcp: The computer name tcp:ACCNT27tcp:ACCNT27
Istanza denominataNamed Instance tcp: nome del computer/nome dell'istanzatcp: The computer name/instance name tcp:ACCNT27\PAYROLLtcp:ACCNT27\PAYROLL

Se è possibile connettersi con Shared Memory e non con TCP, è necessario correggere il problema TCP.If you can connect with shared memory but not TCP, then you must fix the TCP problem. La causa più probabile è che TCP non sia abilitato.The most likely issue is that TCP is not enabled. Per abilitare TCP, vedere i passaggi descritti sopra in Abilitare i protocolli .To enable TCP, See the Enable Protocols steps above.

  1. Quando è possibile connettersi come amministratore, se si vuole stabilire la connessione con un account diverso dall'account di amministratore, provare a connettersi usando l'account di accesso con autenticazione di Windows o l'account di accesso con autenticazione di SQL Server dell'applicazione client.If your goal is to connect with an account other than an administrator account, once you can connect as an administrator, try the connection again using the Windows Authentication login or the SQL Server Authentication login that the client application will be using.

Apertura di una porta nel firewallOpening a Port in the Firewall

Da diversi anni, a partire da Windows XP Service Pack 2, è abilitato Windows Firewall che blocca le connessioni da altri computer.Beginning many years ago with Windows XP Service Pack 2, the Windows firewall is turned on and will block connections from another computer. Per connettersi tramite TCP/IP da un altro computer, è necessario configurare il firewall nel computer SQL Server per consentire le connessioni alla porta TCP usata dal motore di database.To connect using TCP/IP from another computer, on the SQL Server computer you must configure the firewall to allow connections to the TCP port used by the Database Engine. Come accennato in precedenza, l'istanza predefinita è in genere in ascolto sulla porta TCP 1433.As mentioned earlier, the default instance is usually listening on TCP port 1433. Se ci sono istanze denominate o se l'istanza predefinita è stata modificata, la porta TCP di SQL ServerSQL Server potrebbe essere in ascolto su un'altra porta.If you have named instances or if you changed the default, the SQL ServerSQL Server TCP port may be listening on another port. Vedere la sezione iniziale relativa alla raccolta di informazioni per determinare la porta.See the beginining section on gathering information to determine your port.
Se si stabilisce la connessione a un'istanza denominata o a una porta diversa dalla porta TCP 1433, è necessario aprire anche la porta UDP 1434 per il servizio SQL Server Browser.If you are connecting to a named instance or a port other than TCP port 1433, you must also open the UDP port 1434 for the SQL Server Browser service. Per istruzioni dettagliate sull'apertura di una porta in Windows Firewall, vedere Configurazione di Windows Firewall per l'accesso al Motore di database.For step by step instruction on opening a port in the Windows firewall, see Configure a Windows Firewall for Database Engine Access.

Test della connessioneTesting the Connection

Quando è possibile connettersi tramite TCP nello stesso computer, provare a connettersi dal computer client.Once you can connect using TCP on the same computer, it's time to try connecting from the client computer. Sebbene sia in teoria possibile usare qualsiasi applicazione client, per evitare complessità è consigliabile installare gli strumenti di gestione di SQL Server nel client ed eseguire il tentativo usando SQL Server Management Studio.You could theoretically use any client application, but to avoid additional complexity, install the SQL Server Management tools on the client and make the attempt using SQL Server Management Studio.

  1. Nel computer client usare SQL Server Management Studio per tentare di connettersi con l'indirizzo IP e il numero di porta TCP nel formato indirizzo IP virgola numero di porta.On the client computer, using SQL Server Management Studio, attempt to connect using the IP Address and the TCP port number in the format IP address comma port number. Ad esempio, 192.168.1.101,1433 Se non funziona, è probabile che si sia verificato uno dei problemi seguenti:For example, 192.168.1.101,1433 If this doesn't work, then you probably have one of the following problems:

    • Ilping dell'indirizzo IP non funziona e indica un problema di configurazione TCP generale.Ping of the IP address doesn't work, indicating a general TCP configuration problem. Tornare alla sezione Test della connettività TCP/IP.Go back to the section Testing TCP/IP Connectivity.
    • SQL Server non è in attesa sul protocollo TCP.SQL Server is not listening on the TCP protocol. Tornare alla sezione Abilitare i protocolli.Go back to the section Enable Protocols.
    • SQL Server è in attesa su una porta diversa da quella specificata.SQL Server is listening on a port other than the port you specified. Tornare alla sezione Raccolta di informazioni sull'istanza di SQL Server.Go back to the section Gathering Information about the Instance of SQL Server.
    • La porta TCP di SQL Server è bloccata dal firewall.The SQL Server TCP port is being blocked by the firewall. Tornare alla sezione Apertura di una porta nel firewall.Go back to the section Opening a Port in the Firewall.
  2. Quando è possibile connettersi usando l'indirizzo IP e il numero di porta, tentare di connettersi usando l'indirizzo IP senza un numero di porta.Once you can connect using the IP address and port number, attempt to connect using the IP address without a port number. Per un'istanza predefinita, è sufficiente usare l'indirizzo IP.For a default instance, just use the IP address. Per un'istanza denominata, usare l'indirizzo IP e il nome dell'istanza nel formato IP indirizzo barra rovesciata nome dell'istanza, ad esempio 192.168.1.101\PAYROLL Se non funziona, è probabile che si sia verificato uno dei problemi seguenti:For a named instance, use the IP address and the instance name in the format IP address backslash instance name, for example 192.168.1.101\PAYROLL If this doesn't work, then you probably have one of the following problems:

    • Se ci si connette all'istanza predefinita, è possibile che l'istanza sia in attesa su una porta diversa dalla porta TCP 1433 e che il client non stia tentando di connettersi al numero di porta corretto.If you are connecting to the default instance, it might be listening on a port other than TCP port 1433, and the client isn't attempting to connect to the correct port number.
    • Se ci si connette a un'istanza denominata, il numero di porta non viene restituito al client.If you are connecting to a named instance, the port number is not being returned to the client.

Entrambi questi problemi sono correlati al servizio SQL Server Browser che indica il numero di porta al client.Both of these problems are related to the SQL Server Browser service, which provides the port number to the client. Le soluzioni sono:The solutions are:

  • Avviare il servizio SQL Server Browser.Start the SQL Server Browser service. Tornare a Raccolta di informazioni sull'istanza di SQL Server, sezione 1.d.Go back to the section Gathering Information about the Instance of SQL Server, section 1.d.
  • Il servizio SQL Server Browser è bloccato dal firewall.The SQL Server Browser service is being blocked by the firewall. Aprire la porta UDP 1434 nel firewall.Open UDP port 1434 in the firewall. Tornare alla sezione Apertura di una porta nel firewall.Go back to the section Opening a Port in the Firewall. Assicurarsi di aprire una porta UDP e non TCP.(Make sure you are opening a UDP port, not a TCP port. Si tratta di porte diverse.Those are different things.)
  • Le informazioni sulla porta UDP 1434 sono bloccate da un router.The UDP port 1434 information is being blocked by a router. La comunicazione UDP (User Datagram Protocol) non è progettata per passare tramite router.UDP communication (user datagram protocol) is not designed to pass through routers. In questo modo la rete viene occupata da traffico con priorità bassa.This keeps the network from getting filled with low priority traffic. Dovrebbe essere possibile configurare il router per l'inoltro del traffico UDP oppure è possibile decidere di comunicare sempre il numero di porta quando si stabilisce la connessione.You might be able to configure your router to forward UDP traffic, or you can decide to always provide the port number when you connect.
  • Se il computer client usa Windows 7, Windows Server 2008 o un sistema operativo più recente, è possibile che il traffico UDP venga eliminato dal sistema operativo client poiché la risposta del server viene restituita da un indirizzo IP diverso da quello richiesto.If the client computer is using Windows 7 or Windows Server 2008, (or a more recent operating system,) the UDP traffic might be dropped by the client operating system because the response from the server is returned from a different IP address than was queried. Si tratta di una misura di sicurezza che blocca il "loose source mapping".This is a security feature blocking "loose source mapping." Per altre informazioni, vedere la sezione Più indirizzi IP del server dell'argomento Risoluzione dei problemi: Timeout scadutodella documentazione online.For more information, see the Multiple Server IP Addresses section of the Books Online topic Troubleshooting: Timeout Expired. Sebbene si tratti di un articolo relativo a SQL Server 2008 R2, le nozioni fornite sono ancora valide.This is an article from SQL Server 2008 R2, but the principals still apply. Dovrebbe essere possibile configurare il client in modo che venga usato l'indirizzo IP corretto oppure è possibile decidere di comunicare sempre il numero di porta quando si stabilisce la connessione.You might be able to configure the client to use the correct IP address, or you can decide to always provide the port number when you connect.
  1. Quando è possibile connettersi usando l'indirizzo IP o l'indirizzo IP e il nome dell'istanza per un'istanza denominata, provare a connettersi usando il nome del computer o il nome del computer e il nome dell'istanza per un'istanza denominata.Once you can connect using the IP address (or IP address and instance name for a named instance), attempt to connect using the computer name (or computer name and instance name for a named instance). Inserire tcp: prima del nome del computer per forzare una connessione TCP/IP.Put tcp: in front of the computer name to force a TCP/IP connection. Ad esempio, per l'istanza predefinita in un computer denominato ACCNT27usare tcp:ACCNT27 . Per un'istanza denominata PAYROLLnello stesso computer usare tcp:ACCNT27\PAYROLL . Se è possibile connettersi usando l'indirizzo IP ma non è possibile farlo usando il nome del computer, significa che c'è un problema di risoluzione dei nomi.For example, for the default instance on a computer named ACCNT27, use tcp:ACCNT27 For a named instance called PAYROLL, on that computer use tcp:ACCNT27\PAYROLL If you can connect using the IP address but not using the computer name, then you have a name resolution problem. Tornare alla parte 4 della sezione Test della connettività TCP/IP.Go back to the section Testing TCP/IP Connectivity, section 4.

  2. Quando è possibile connettersi usando il nome del computer forzando TCP, tentare la connessione usando il nome del computer senza forzare TCP.Once you can connect using the computer name forcing TCP, attempt connecting using the computer name but not forcing TCP. Ad esempio, per un'istanza predefinita usare solo il nome del computer, ad esempio CCNT27 Per un'istanza denominata usare il nome del computer e il nome di istanza, ad esempio ACCNT27\PAYROLL Se è stato possibile connettersi forzando TCP ma non è stato possibile senza forzare TCP, è probabile che il client stia usando un altro protocollo, ad esempio named pipe.For example, for a default instance use just the computer name such as CCNT27 For a named instance use the computer name and instance name like ACCNT27\PAYROLL If you could connect while forcing TCP, but not without forcing TCP, then the client is probably using another protocol (such as named pipes).

    1. In Gestione configurazione SQL Server nel computer client espandere Configurazione SQL Native Client versionenel riquadro sinistro e quindi selezionare Protocolli client.On the client computer, using SQL Server Configuration Manager, in the left-pane expand SQL Native Client version Configuration, and then select Client Protocols.
    2. Nel riquadro destro assicurarsi che TCP/IP sia abilitato.On the right-pane, Make sure TCP/IP is enabled. Se TCP/IP è disabilitato, fare clic con il pulsante destro del mouse su TCP/IP e quindi fare clic su Abilita.If TCP/IP is disabled, right-click TCP/IP and then click Enable.
    3. Assicurarsi che l'ordine dei protocolli per TCP/IP sia rappresentato da un numero più piccolo rispetto a quello di named pipe o protocolli VIA (nelle versioni precedenti).Make sure that the protocol order for TCP/IP is a smaller number that the named pipes (or VIA on older versions) protocols. In genere è consigliabile lasciare Shared Memory con ordine 1 e TCP/IP con ordine 2.Generally you should leave Shared Memory as order 1 and TCP/IP as order 2. Shared Memory viene usato solo quando il client e SQL Server sono in esecuzione nello stesso computer.Shared memory is only used when the client and SQL Server are running on the same computer. Viene tentato l'uso di tutti i protocolli abilitati nell'ordine fino a quando non viene stabilita una connessione, ad eccezione di Shared Memory che viene ignorato quando non viene stabilita la connessione allo stesso computer.All enabled protocols are tried in order until one succeeds, except that shared memory is skipped when the connection is not to the same computer.