Servizio SQL Server Browser (Motore database e SSAS)SQL Server Browser Service (Database Engine and SSAS)

Il programma SQL ServerSQL ServerBrowser viene eseguito come servizio Windows.The SQL ServerSQL ServerBrowser program runs as a Windows service. SQL ServerSQL Server Browser rimane in attesa delle richieste in entrata di risorse di MicrosoftMicrosoft SQL ServerSQL Server e fornisce informazioni sulle istanze di SQL ServerSQL Server installate nel computer. Browser listens for incoming requests for MicrosoftMicrosoft SQL ServerSQL Server resources and provides information about SQL ServerSQL Server instances installed on the computer. SQL ServerSQL Server Browser consente di eseguire le azioni seguenti: Browser contributes to the following actions:

  • Esplorazione di un elenco di server disponibiliBrowsing a list of available servers

  • Connessione all'istanza del server correttaConnecting to the correct server instance

  • Connessione a endpoint della connessione amministrativa dedicata (DAC)Connecting to dedicated administrator connection (DAC) endpoints

    Per ogni istanza del Motore di databaseDatabase Engine e di SSASSSAS, il servizio SQL ServerSQL Server Browser (sqlbrowser) fornisce il nome dell'istanza e il numero di versione.For each instance of the Motore di databaseDatabase Engine and SSASSSAS, the SQL ServerSQL Server Browser service (sqlbrowser) provides the instance name and the version number. SQL ServerSQL Server Browser viene installato con SQL ServerSQL Server. Browser is installed with SQL ServerSQL Server.

    SQL ServerSQL Server Browser può essere configurato durante l'installazione o mediante Gestione configurazione SQL ServerSQL Server . Browser can be configured during setup or by using SQL ServerSQL Server Configuration Manager. Per impostazione predefinita, il servizio SQL ServerSQL Server Browser viene avviato automaticamente:By default, the SQL ServerSQL Server Browser service starts automatically:

  • Durante l'aggiornamento di un'installazione.When upgrading an installation.

  • Durante l'installazione in un cluster.When installing on a cluster.

  • Durante l'installazione di un'istanza denominata del Motore di databaseDatabase Engine che include tutte le istanze di SQL Server Express.When installing a named instance of the Motore di databaseDatabase Engine including all instances of SQL Server Express.

  • Durante l'installazione di un'istanza denominata di Analysis ServicesAnalysis Services.When installing a named instance of Analysis ServicesAnalysis Services.

Informazioni preliminariBackground

Nelle versioni precedenti a SQL Server 2000SQL Server 2000è possibile installare solo un'istanza di SQL ServerSQL Server in un computer.Prior to SQL Server 2000SQL Server 2000, only one instance of SQL ServerSQL Server could be installed on a computer. SQL ServerSQL Server resta in attesa delle richieste in entrata sulla porta 1433, assegnata a SQL ServerSQL Server dall'autorità ufficiale IANA (Internet Assigned Numbers Authority). listened for incoming requests on port 1433, assigned to SQL ServerSQL Server by the official Internet Assigned Numbers Authority (IANA). Poiché solo un'istanza di SQL ServerSQL Server può usare una porta, quando in SQL Server 2000SQL Server 2000 è stato introdotto il supporto per più istanze di SQL ServerSQL Server, è stato sviluppato il protocollo SSRP ( SQL ServerSQL Server Resolution Protocol) per l'ascolto sulla porta UDP 1434.Only one instance of SQL ServerSQL Server can use a port, so when SQL Server 2000SQL Server 2000 introduced support for multiple instances of SQL ServerSQL Server, SQL ServerSQL Server Resolution Protocol (SSRP) was developed to listen on UDP port 1434. Il servizio listener risponde alle richieste del client con i nomi delle istanze installate e le porte o le named pipe usate dall'istanza.This listener service responded to client requests with the names of the installed instances, and the ports or named pipes used by the instance. Per risolvere i problemi connessi ai suoi limiti, in SQL Server 2005SQL Server 2005 il sistema SSRP è stato sostituito dal servizio SQL ServerSQL Server Browser.To resolve limitations of the SSRP system, SQL Server 2005SQL Server 2005 introduced the SQL ServerSQL Server Browser service as a replacement for SSRP.

Funzionamento di SQL Server BrowserHow SQL Server Browser Works

Quando viene avviata un'istanza di SQL ServerSQL Server , se il protocollo TCP/IP è abilitato per SQL ServerSQL Server, al server viene assegnata una porta TCP/IP.When an instance of SQL ServerSQL Server starts, if the TCP/IP protocol is enabled for SQL ServerSQL Server, the server is assigned a TCP/IP port. Se è abilitato il protocollo Named Pipes, SQL ServerSQL Server rimane in attesa su una named pipe specifica.If the named pipes protocol is enabled, SQL ServerSQL Server listens on a specific named pipe. Questa porta, o "pipe", viene usata dall'istanza specifica per scambiare dati con le applicazioni client.This port, or "pipe," is used by that specific instance to exchange data with client applications. Durante l'installazione, la porta TCP 1433 e la pipe \sql\query vengono assegnate all'istanza predefinita, ma possono essere cambiate in seguito dall'amministratore del server usando Gestione configurazione SQL ServerSQL Server .During installation, TCP port 1433 and pipe \sql\query are assigned to the default instance, but those can be changed later by the server administrator using SQL ServerSQL Server Configuration Manager. Poiché solo un'istanza di SQL ServerSQL Server può usare una porta o una pipe, vengono assegnati diversi numeri di porta e nomi di pipe alle istanze denominate, incluso SQL Server ExpressSQL Server Express.Because only one instance of SQL ServerSQL Server can use a port or pipe, different port numbers and pipe names are assigned for named instances, including SQL Server ExpressSQL Server Express. Per impostazione predefinita, quando sono abilitati, sia le istanze denominate che SQL Server ExpressSQL Server Express sono configurati per l'utilizzo di porte dinamiche, ovvero viene assegnata una porta disponibile quando viene avviato SQL ServerSQL Server .By default, when enabled, both named instances and SQL Server ExpressSQL Server Express are configured to use dynamic ports, that is, an available port is assigned when SQL ServerSQL Server starts. Se lo si desidera, è possibile assegnare una porta specifica a un'istanza di SQL ServerSQL Server.If you want, a specific port can be assigned to an instance of SQL ServerSQL Server. Durante la connessione, i client possono specificare una determinata porta, ma se la porta viene assegnata in modo dinamico, il numero di porta può essere modificato a ogni riavvio di SQL ServerSQL Server e, pertanto, il numero di porta corretto non è noto al client.When connecting, clients can specify a specific port; but if the port is dynamically assigned, the port number can change anytime SQL ServerSQL Server is restarted, so the correct port number is unknown to the client.

All'avvio, SQL ServerSQL Server Browser viene avviato e richiede la porta UDP 1434.Upon startup, SQL ServerSQL Server Browser starts and claims UDP port 1434. SQL ServerSQL Server Browser legge il Registro di sistema, identifica tutte le istanze di SQL ServerSQL Server nel computer e rileva le porte e le named pipe usate. Browser reads the registry, identifies all instances of SQL ServerSQL Server on the computer, and notes the ports and named pipes that they use. Quando in un server sono installate due o più schede di rete, SQL ServerSQL Server Browser restituisce la prima porta abilitata rilevata per SQL ServerSQL Server.When a server has two or more network cards, SQL ServerSQL Server Browser returns the first enabled port it encounters for SQL ServerSQL Server. SQL ServerSQL Server Browser supporta ipv6 e ipv4. Browser support ipv6 and ipv4.

Quando i client SQL ServerSQL Server richiedono le risorse SQL ServerSQL Server , la libreria di rete client invia un messaggio UDP al server usando la porta 1434.When SQL ServerSQL Server clients request SQL ServerSQL Server resources, the client network library sends a UDP message to the server using port 1434. SQL ServerSQL Server Browser risponde con la porta TCP/IP o la named pipe dell'istanza richiesta. Browser responds with the TCP/IP port or named pipe of the requested instance. La libreria di rete dell'applicazione client completa quindi la connessione inviando una richiesta al server tramite la porta o la named pipe dell'istanza desiderata.The network library on the client application then completes the connection by sending a request to the server using the port or named pipe of the desired instance. SQL ServerSQL Server Browser non restituisce informazioni sulla porta per l'istanza predefinita.The SQL ServerSQL Server Browser does not return port information for the default instance.

Per informazioni sull'avvio e l'arresto del servizio SQL ServerSQL Server Browser, vedere Avviare, arrestare, sospendere, riprendere, riavviare il motore di database, SQL Server Agent o SQL Server Browser.For information about starting and stopping the SQL ServerSQL Server Browser service, see Start, Stop, Pause, Resume, Restart the Database Engine, SQL Server Agent, or SQL Server Browser Service.

Utilizzo di SQL Server BrowserUsing SQL Server Browser

Se il servizio SQL ServerSQL Server Browser non è in esecuzione, è comunque possibile connettersi a SQL ServerSQL Server indicando la named pipe o il numero di porta corretto.If the SQL ServerSQL Server Browser service is not running, you are still able to connect to SQL ServerSQL Server if you provide the correct port number or named pipe. È ad esempio possibile connettersi all'istanza predefinita di SQL ServerSQL Server con TCP/IP se l'istanza è in esecuzione nella porta 1433.For instance, you can connect to the default instance of SQL ServerSQL Server with TCP/IP if it is running on port 1433.

Se tuttavia il servizio SQL ServerSQL Server Browser non è in esecuzione, non funzionano le connessioni seguenti:However, if the SQL ServerSQL Server Browser service is not running, the following connections do not work:

  • Qualsiasi componente che tenta di eseguire la connessione a un'istanza denominata senza specificare completamente i parametri, ad esempio la porta TCP/IP o la named pipe.Any component that tries to connect to a named instance without fully specifying all the parameters (such as the TCP/IP port or named pipe).

  • Qualsiasi componente che genera o passa informazioni server/istanza che potrebbero essere usate in seguito da altri componenti per eseguire nuovamente la connessione.Any component that generates or passes server\instance information that could later be used by other components to reconnect.

  • Connessione a un'istanza denominata senza indicare il numero di porta o la pipe.Connecting to a named instance without providing the port number or pipe.

  • Connessione amministrativa dedicata (DAC) a un'istanza denominata o all'istanza predefinita se non si usano la porta TCP/IP 1433.DAC to a named instance or the default instance if not using TCP/IP port 1433.

  • Servizio redirector OLAP.The OLAP redirector service.

  • Enumerazione dei server in SQL Server Management StudioSQL Server Management Studio, Enterprise Manager o Query Analyzer.Enumerating servers in SQL Server Management StudioSQL Server Management Studio, Enterprise Manager, or Query Analyzer.

    Se si usano SQL ServerSQL Server in uno scenario client-server, ad esempio quando l'applicazione accede a SQL ServerSQL Server su una rete, e si arresta o disabilita il servizio SQL ServerSQL Server Browser, è necessario assegnare un numero di porta specifico a ogni istanza e scrivere il codice dell'applicazione client affinché venga sempre usato il numero di porta assegnato.If you are using SQL ServerSQL Server in a client-server scenario (for example, when your application is accessing SQL ServerSQL Server across a network), if you stop or disable the SQL ServerSQL Server Browser service, you must assign a specific port number to each instance and write your client application code to always use that port number. Questo approccio comporta i problemi indicati di seguito.This approach has the following problems:

  • È necessario aggiornare e mantenere aggiornato il codice dell'applicazione client per assicurarsi che si connetta alla porta corretta.You must update and maintain client application code to ensure it is connecting to the proper port.

  • La porta scelta per ogni istanza potrebbe essere usata da un altro servizio o un'altra applicazione nel server, con conseguente non disponibilità dell'istanza di SQL ServerSQL Server .The port you choose for each instance may be used by another service or application on the server, causing the instance of SQL ServerSQL Server to be unavailable.

ClusteringClustering

SQL ServerSQL Server Browser non è una risorsa cluster e non supporta il failover tra nodi del cluster. Browser is not a clustered resource and does not support failover from one cluster node to the other. Nel caso di un cluster, è pertanto consigliabile installare e abilitare SQL ServerSQL Server Browser per ogni nodo del cluster.Therefore, in the case of a cluster, SQL ServerSQL Server Browser should be installed and turned on for each node of the cluster. Sui cluster SQL ServerSQL Server Browser è in attesa su IP_ANY.On clusters, SQL ServerSQL Server Browser listens on IP_ANY.

Nota

Durante l'attesa su IP_ANY, quando si abilita l'attesa su IP specifici, l'utente deve configurare la stessa porta TCP in ogni IP, poiché SQL ServerSQL Server Browser restituisce la prima coppia IP/porta rilevata.When listening on IP_ANY, when you enable listening on specific IPs, the user must configure the same TCP port on each IP, because SQL ServerSQL Server Browser returns the first IP/port pair that it encounters.

Installazione, disinstallazione ed esecuzione dalla riga di comandoInstalling, Uninstalling, and Running from the Command Line

Per impostazione predefinita, il programma SQL ServerSQL Server Browser viene installato in C:\Programmi(x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe.By default, the SQL ServerSQL Server Browser program is installed at C:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe.

Il servizio SQL ServerSQL Server Browser viene disinstallato quando viene rimossa l'ultima istanza di SQL ServerSQL Server .The SQL ServerSQL Server Browser service is uninstalled when the last instance of SQL ServerSQL Server is removed.

SQL ServerSQL Server Browser può essere avviato dal prompt dei comandi, ai fini della risoluzione dei problemi, usando l'opzione -c : Browser can be started from the command prompt for troubleshooting, by using the -c switch:

<drive>\<path>\sqlbrowser.exe -c  

SicurezzaSecurity

Privilegi dell'accountAccount Privileges

SQL ServerSQL Server Browser rimane in attesa su una porta UDP e accetta le richieste non autenticate tramite il protocollo SSRP ( SQL ServerSQL Server Resolution Protocol). Browser listens on a UDP port and accepts unauthenticated requests by using SQL ServerSQL Server Resolution Protocol (SSRP). SQL ServerSQL Server Browser deve essere eseguito nel contesto di sicurezza di un utente con pochi privilegi per ridurre l'esposizione agli attacchi da parte di utenti malintenzionati. Browser should be run in the security context of a low privileged user to minimize exposure to a malicious attack. È possibile modificare l'account di accesso usando Gestione configurazione SQL ServerSQL Server .The logon account can be changed by using the SQL ServerSQL Server Configuration Manager. Di seguito vengono indicati i diritti utente minimi per SQL ServerSQL Server Browser:The minimum user rights for SQL ServerSQL Server Browser are the following:

  • Nega accesso al computer dalla reteDeny access to this computer from the network

  • Nega accesso localeDeny logon locally

  • Nega accesso come processo batchDeny Log on as a batch job

  • Nega accesso tramite Servizi terminalDeny Log On Through Terminal Services

  • Accedi come servizioLog on as a service

  • Lettura e scrittura per le chiavi del Registro di sistema di SQL ServerSQL Server correlate alle comunicazioni di rete (porte e pipe)Read and write the SQL ServerSQL Server registry keys related to network communication (ports and pipes)

Account predefinitoDefault Account

Tramite il programma di installazione SQL ServerSQL Server Browser viene configurato per l'utilizzo dell'account selezionato per i servizi durante l'installazione.Setup configures SQL ServerSQL Server Browser to use the account selected for services during setup. Tra gli altri account possibili sono inclusi i seguenti:Other possible accounts include the following:

  • Tutti gli account di dominio\localiAny domain\local account

  • Account Servizio localeThe local service account

  • Account Sistema locale (sconsigliabile perché include privilegi non necessari)The local system account (not recommended as has unnecessary privileges)

Istanze nascoste di SQL ServerHiding SQL Server

Le istanze nascoste sono istanze di SQL ServerSQL Server che supportano solo connessioni della memoria condivisa.Hidden instances are instances of SQL ServerSQL Server that support only shared memory connections. Per SQL ServerSQL Server, impostare il flag HideInstance per indicare che SQL ServerSQL Server Browser non deve rispondere inviando alcuna informazione su questa istanza del server.For SQL ServerSQL Server, set the HideInstance flag to indicate that SQL ServerSQL Server Browser should not respond with information about this server instance.

Utilizzo di un firewallUsing a Firewall

Per comunicare con il servizio SQL ServerSQL Server Browser in un server protetto da un firewall, aprire la porta UDP 1434 oltre alla porta TCP usata da SQL ServerSQL Server , ad esempio la porta 1433.To communicate with the SQL ServerSQL Server Browser service on a server behind a firewall, open UDP port 1434, in addition to the TCP port used by SQL ServerSQL Server (e.g., 1433). Per informazioni sull'utilizzo di un firewall, vedere "Procedura: Configurazione di un firewall per l'accesso a SQL ServerSQL Server " nella documentazione online di SQL ServerSQL Server .For information about working with a firewall, see "How to: Configure a Firewall for SQL ServerSQL Server Access" in SQL ServerSQL Server Books Online.

Vedere ancheSee Also

Protocolli e librerie di reteNetwork Protocols and Network Libraries