Dela via


SQL Server-webbläsartjänst (databasmotor och SSAS)

gäller för:SQL Server – endast Windows

SQL Server Browser (sqlbrowser) körs som en tjänst för att hjälpa klientdatorer att hitta instanser av SQL Server på en server som kör Windows. SQL Server Browser installeras med SQL Server. SQL Server Browser-tjänsten behöver inte konfigureras, men måste köras i vissa anslutningsscenarier.

SQL Server Browser kan hjälpa dig med:

  • Bläddra i en lista över tillgängliga servrar. För varje instans av databasmotorn och SQL Server Analysis Services (SSAS) tillhandahåller SQL Server Browser-tjänsten instansnamnet och versionsnumret.

  • Ansluta till rätt serverinstans.

  • Ansluta till dedikerade DAC-slutpunkter ( Administratörsanslutning ).

Konfigurera SQL Server Browser-tjänsten

SQL Server Browser kan konfigureras under installationen eller med SQL Server Configuration Manager. Som standard startar SQL Server Browser-tjänsten automatiskt:

  • När du uppgraderar en installation.
  • När du installerar på ett kluster.
  • När du installerar en namngiven instans av databasmotorn, inklusive alla instanser av SQL Server Express.
  • När du installerar en namngiven instans av SSAS.

Så här fungerar SQL Server Browser

I följande avsnitt beskrivs hur SQL Server Browser-tjänsten fungerar.

TCP/IP-port eller namngiven rörtilldelning

När en instans av SQL Server startar och TCP/IP-protokollet är aktiverat för SQL Server tilldelas instansen en TCP/IP-port. SQL Server lyssnar på en specifik namngiven pipe om det namngivna pipes-protokollet är aktiverat. Den här porten eller namngivna rören används av den specifika instansen för att utbyta data med klientprogrammen. TCP/IP-port 1433 och -rör \sql\query tilldelas till standardinstansen under installationen. Serveradministratören kan ändra porten eller namngivna pipe med SQL Server Configuration Manager.

Namngivna instanser och dynamiska portar

Eftersom endast en instans av SQL Server kan använda en port eller ett rör, tilldelas olika portnummer och pipe-namn för namngivna instanser, inklusive SQL Server Express Edition. När det är aktiverat konfigureras namngivna instanser och SQL Server Express att använda dynamiska portar som standard. En tillgänglig port tilldelas alltså när SQL Server startar.

Om du vill kan en specifik port tilldelas till en instans av SQL Server. Klienter kan ange en specifik port när de ansluter till SQL Server. Men om porten tilldelas dynamiskt kan portnumret ändras när SQL Server-instansen startas om, så att rätt portnummer är okänt för klienten.

SQL Server-startprocess och portidentifiering

Vid start startar SQL Server Browser och gör anspråk på UDP-porten 1434(User Datagram Protocol). SQL Server Browser läser registret, identifierar alla instanser av SQL Server på datorn och noterar portarna och namngivna pipes som de använder. När en server har två eller flera nätverkskort returnerar SQL Server Browser den första aktiverade port som den stöter på för SQL Server. SQL Server Browser stöder IPv4 och IPv6.

När SQL Server-klienter begär SQL Server-resurser skickar klientnätverksbiblioteket ett UDP-meddelande till servern med hjälp av porten 1434. SQL Server Browser svarar med TCP/IP-porten eller namngivna pipe för den begärda instansen. Nätverksbiblioteket i klientprogrammet slutför sedan anslutningen genom att skicka en begäran till servern med hjälp av porten eller namngiven pipe för den önskade instansen.

Mer information om hur du startar och stoppar SQL Server Browser-tjänsten finns i Starta, stoppa, pausa, återuppta och starta om SQL Server-tjänster.

Använda SQL Server Browser

Om SQL Server Browser-tjänsten inte körs kan du fortfarande ansluta till SQL Server om du anger rätt portnummer eller namngivet rör. Du kan till exempel ansluta till standardinstansen av SQL Server med TCP/IP om den körs på port 1433.

Men om SQL Server Browser-tjänsten inte körs fungerar inte följande anslutningar:

  • Alla komponenter som försöker ansluta till en namngiven instans utan att helt ange alla parametrar (till exempel TCP/IP-porten eller namngivna pipe).

  • Alla komponenter som genererar eller skickar <server>\<instance> information som andra komponenter senare kan använda för att återansluta.

  • Ansluta till en namngiven instans utan att ange portnumret eller röret.

  • Diagnostikanslutning för databasadministratörer till en namngiven instans eller standardinstans om den inte använder TCP/IP-port 1433.

  • Omdirigeringstjänsten onlineanalysbearbetning (OLAP).

  • Räkna upp servrar i SQL Server Management Studio.

Anta att du använder SQL Server i ett klientserverscenario (till exempel när ditt program har åtkomst till SQL Server i ett nätverk). Om du stoppar eller inaktiverar SQL Server Browser-tjänsten måste du tilldela ett specifikt portnummer till varje instans och konfigurera klientprogramkoden så att den använder det portnumret. Den här metoden har följande problem:

  • Du måste uppdatera och underhålla klientprogramkoden för att säkerställa att den ansluter till rätt port.

  • Den port som du väljer för varje instans kan användas av en annan tjänst eller ett annat program på servern, vilket gör att instansen av SQL Server inte är tillgänglig.

Kluster och SQL Server Browser

SQL Server Browser är inte en klustrad resurs och stöder inte redundans från en klusternod till en annan. Om det finns ett kluster bör SQL Server Browser därför installeras och aktiveras för varje klusternod. I kluster lyssnar SQL Server Browser på IP_ANY.

Anmärkning

När SQL Server Browser lyssnar på IP_ANY och du aktiverar lyssning på specifika IP-adresser måste du konfigurera samma TCP/IP-port på varje IP-adress eftersom SQL Server Browser returnerar den första IP-adressen och portparet som den stöter på.

Installera, avinstallera och kör från kommandoraden

Som standard installeras SQL Server Browser-programmet på <drive>:\Program Files (x86)\Microsoft SQL Server\<nn>\Shared\sqlbrowser.exe.

SQL Server Browser-tjänsten avinstalleras när den sista instansen av SQL Server tas bort.

SQL Server Browser kan startas från kommandotolken för felsökning med hjälp av växeln -c :

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

Säkerhet

SQL Server Browser Service är avgörande för att underlätta nätverkskommunikation med SQL Server-instanser.

Säkerhetsåtgärder för SQL Server Browser Service är:

  • Konfigurera brandväggar för att tillåta dess trafik.

  • Begränsa åtkomsten till betrodda IP-adresser.

  • Regelbundet tillämpa uppdateringar för att korrigera sårbarheter.

  • Dessutom måste du implementera starka autentiserings- och auktoriseringsprinciper för att förhindra obehörig åtkomst och upprätthålla integriteten i SQL Server-miljön.

Kontobehörigheter

SQL Server Browser lyssnar på en UDP-port och accepterar oautentiserade begäranden med SQL Server Resolution Protocol (SSRP). SQL Server Browser ska köras i säkerhetskontexten för en användare med låg behörighet för att minimera exponeringen för skadliga attacker. Inloggningskontot kan ändras med hjälp av SQL Server Configuration Manager.

De minsta användarrättigheterna för SQL Server Browser är:

  • Neka åtkomst till den här datorn från nätverket.
  • Neka inloggning lokalt.
  • Neka inloggning som ett batchjobb.
  • Neka inloggning via Terminal Services.
  • Logga in med tjänstekonto.
  • Läsa och skriva SQL Server-registernycklar relaterade till nätverkskommunikation (portar och rör).

Standardkonto

Konfigurationen konfigurerar SQL Server Browser för att använda det konto som valts för tjänster under installationen. Andra möjliga konton är:

  • Alla domäner\lokala konton.
  • Kontot Lokal tjänst .
  • Det lokala systemkontot (rekommenderas inte eftersom det har onödiga privilegier).

Dölj SQL Server

Dolda instanser är instanser av SQL Server som endast stöder delade minnesanslutningar. För SQL Server anger du HideInstance flaggan för att ange att SQL Server Browser inte ska svara med information om den här serverinstansen.

Använda en brandvägg

Om du vill kommunicera med SQL Server Browser-tjänsten på en server bakom en brandvägg öppnar du UDP-porten 1434 och TCP/IP-porten som används av SQL Server (till exempel 1433). Information om hur du arbetar med en brandvägg finns i Konfigurera Windows-brandväggen för att tillåta SQL Server-åtkomst.