Servizio SQL Server Browser (Motore database e SSAS)

Il programma SQL ServerSQL Server Browser viene eseguito come servizio Windows. 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. SQL ServerSQL Server Browser consente di eseguire le azioni seguenti:

  • Esplorazione di un elenco di server disponibili

  • Connessione all'istanza del server corretta

  • Connessione a endpoint della connessione amministrativa dedicata (DAC)

    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. SQL ServerSQL Server Browser viene installato con SQL ServerSQL Server.

    SQL ServerSQL Server Browser può essere configurato durante l'installazione o mediante Gestione configurazione SQL ServerSQL Server. Per impostazione predefinita, il servizio SQL ServerSQL Server Browser viene avviato automaticamente:

  • Durante l'aggiornamento di un'installazione.

  • Durante l'installazione in un cluster.

  • Durante l'installazione di un'istanza denominata del Motore di databaseDatabase Engine che include tutte le istanze di SQL Server Express.

  • Durante l'installazione di un'istanza denominata di Analysis ServicesAnalysis Services.

Informazioni preliminari

Nelle versioni precedenti a SQL Server 2000SQL Server 2000 è possibile installare solo un'istanza di SQL ServerSQL Server in un 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). 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. Il servizio listener risponde alle richieste del client con i nomi delle istanze installate e le porte o le named pipe usate dall'istanza. 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.

Funzionamento di SQL Server Browser

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. Se è abilitato il protocollo Named Pipes, SQL ServerSQL Server rimane in attesa su una named pipe specifica. Questa porta, o "pipe", viene usata dall'istanza specifica per scambiare dati con le applicazioni client. 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. 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. 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. Se lo si desidera, è possibile assegnare una porta specifica a un'istanza di 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.

All'avvio, SQL ServerSQL Server Browser viene avviato e richiede la porta UDP 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. 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. SQL ServerSQL Server Browser supporta ipv6 e 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. SQL ServerSQL Server Browser risponde con la porta TCP/IP o la named pipe dell'istanza richiesta. 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. SQL ServerSQL Server Browser non restituisce informazioni sulla porta per l'istanza predefinita.

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.

Utilizzo di 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. È ad esempio possibile connettersi all'istanza predefinita di SQL ServerSQL Server con TCP/IP se l'istanza è in esecuzione nella porta 1433.

Se tuttavia il servizio SQL ServerSQL Server Browser non è in esecuzione, non funzionano le connessioni seguenti:

  • 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.

  • Qualsiasi componente che genera o passa informazioni server/istanza che potrebbero essere usate in seguito da altri componenti per eseguire nuovamente la connessione.

  • Connessione a un'istanza denominata senza indicare il numero di porta o la pipe.

  • Connessione amministrativa dedicata (DAC) a un'istanza denominata o all'istanza predefinita se non si usano la porta TCP/IP 1433.

  • Servizio redirector OLAP.

  • Enumerazione dei server in SQL Server Management StudioSQL Server Management Studio, Enterprise Manager o 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. Questo approccio comporta i problemi indicati di seguito.

  • È necessario aggiornare e mantenere aggiornato il codice dell'applicazione client per assicurarsi che si connetta alla porta corretta.

  • 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.

Clustering

SQL ServerSQL Server Browser non è una risorsa cluster e non supporta il failover tra nodi del cluster. Nel caso di un cluster, è pertanto consigliabile installare e abilitare SQL ServerSQL Server Browser per ogni nodo del cluster. Sui cluster SQL ServerSQL Server Browser è in attesa su 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.

Installazione, disinstallazione ed esecuzione dalla riga di comando

Per impostazione predefinita, il programma SQL ServerSQL Server Browser viene installato in C:\Programmi(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.

SQL ServerSQL Server Browser può essere avviato dal prompt dei comandi, ai fini della risoluzione dei problemi, usando l'opzione -c:

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

Sicurezza

Privilegi dell'account

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). 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. È possibile modificare l'account di accesso usando Gestione configurazione SQL ServerSQL Server. Di seguito vengono indicati i diritti utente minimi per SQL ServerSQL Server Browser:

  • Nega accesso al computer dalla rete

  • Nega accesso locale

  • Nega accesso come processo batch

  • Nega accesso tramite Servizi terminal

  • Accedi come servizio

  • Lettura e scrittura per le chiavi del Registro di sistema di SQL ServerSQL Server correlate alle comunicazioni di rete (porte e pipe)

Account predefinito

Tramite il programma di installazione SQL ServerSQL Server Browser viene configurato per l'utilizzo dell'account selezionato per i servizi durante l'installazione. Tra gli altri account possibili sono inclusi i seguenti:

  • Tutti gli account di dominio\locali

  • Account Servizio locale

  • Account Sistema locale (sconsigliabile perché include privilegi non necessari)

Istanze nascoste di SQL Server

Le istanze nascoste sono istanze di SQL ServerSQL Server che supportano solo connessioni della memoria condivisa. 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.

Utilizzo di un 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. 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.

Vedere anche

Protocolli e librerie di rete