Teď jste offline a čekáte, až se znova připojí internet.

Postup při konfiguraci serveru SQL Server naslouchat na určitém portu

DŮLEŽITÉ: Tento článek je přeložen pomocí softwaru na strojový překlad Microsoft. Nepřesný či chybný překlad lze opravit prostřednictvím technologie Community Translation Framework (CTF). Microsoft nabízí strojově přeložené, komunitou dodatečně upravované články, a články přeložené lidmi s cílem zajistit přístup ke všem článkům v naší znalostní bázi ve více jazycích. Strojově přeložené a dodatečně upravované články mohou obsahovat chyby ve slovníku, syntaxi a gramatice. Společnost Microsoft není odpovědná za jakékoliv nepřesnosti, chyby nebo škody způsobené nesprávným překladem obsahu nebo jeho použitím našimi zákazníky. Více o CTF naleznete na http://support.microsoft.com/gp/machine-translation-corrections/cs.

Projděte si také anglickou verzi článku: 823938
Souhrn
Tento článek popisuje přidělování statických a dynamických portů v systému Microsoft SQL Server 2008, SQL Server 2005 nebo SQL Server 2000. Také popisuje, jak konfigurovat instanci serveru SQL Server pomocí statický port nebo dynamických portů.
Další informace
Přidělení statický port
Pokud nakonfigurujete instance serveru SQL Server pomocí statický port a restartování instance serveru SQL Server, instance serveru SQL Server naslouchá pouze na statického zadaný port. Klienti serveru SQL Server musí odeslat všechny požadavky pouze statický port, na kterém naslouchá instance serveru SQL Server.

Nicméně pokud instance serveru SQL Server je nakonfigurována k naslouchání na konkrétní statický port a používá jiný program spuštěný v počítači již statického zadaný port při spuštění serveru SQL Server, SQL Server nenaslouchá na statického zadaný port.

Ve výchozím výchozí instance serveru SQL Server přijímá požadavky od klientů serveru SQL Server na statický port 1433. Síťových knihoven klienta proto předpokládat, že se připojit k výchozí instance serveru SQL Server používá port 1433 nebo globální výchozí port, který je definován pro tento klientský počítač.

Pokud výchozí instance serveru SQL Server naslouchá na portu než portu 1433, musíte definovat název aliasu serveru nebo změna globální výchozí port pomocí nástroj Client Network Utility. Však můžete provést také výchozí instance serveru SQL Server naslouchání na více portech statické.

Další informace o způsobu nastavení serveru SQL Server naslouchání na více statických portů TCP klepněte na následující číslo článku databáze Microsoft Knowledge Base:
294453 Jak nastavit SQL Server naslouchání na více statických portů TCP
Výchozí instance serveru SQL Server nepodporuje dynamické přidělování portů. Však pojmenované instance serveru SQL Server podporuje přidělování statických a dynamických portů. Výchozí pojmenované instance serveru SQL Server naslouchá na dynamických portů. Pro pojmenované instance serveru SQL Server službu Prohlížeč serveru SQL pro SQL Server 2008, SQL Server 2005 nebo SQL Server rozlišení Protocol (SSRP) pro SQL Server 2000 slouží vždy k překladu názvu instance k portu, bez ohledu na to, zda port je statické nebo dynamické. Služba prohledávání počítačů nebo SSRP se nikdy nepoužívá pro výchozí instanci serveru SQL Server.

Dynamické přidělování portů
Pojmenované instance serveru SQL Server, můžete použít proces přidělování dynamických portů. V procesu přidělování dynamických portů při prvním spuštění instance serveru SQL Server port nastaven na nulu (0). Proto SQL Server požadavky volného portu číslo z operačního systému. Jakmile se přiděluje číslo portu na serveru SQL Server, SQL Server spustí naslouchání na portu přidělené.

Číslo přidělené port jsou zapsány do registru systému Windows. Při každém spuštění, pojmenované instance serveru SQL Server používá čísla portu přidělené. Však v nepravděpodobném případě, že jiný program, který je v počítači již spuštěn při spuštění serveru SQL Server používá čísla portu dříve přidělené (ale nikoli statické), SQL Server vybere jiný port.

Při druhém spuštění pojmenované instance serveru SQL Server SQL Server otevře naslouchající číslo portu, který byl spuštěn při prvním následujícím způsobem:
  • Pokud port je otevřen bez chyb, SQL Server naslouchá na portu.
  • Pokud port není otevřen a dojde k chybám, SQL Server se chová následovně:
    • Zobrazí se následující chybová zpráva:
      ID chyby 10048 (WSAEADDRINUSE)
      Po zobrazení této chybové zprávy SQL Server určuje, že port je používán. Číslo portu, je nastavena na nulu (0) znovu. Proto je přiřazen port k dispozici. A SQL Server čeká na požadavek na připojení klienta v portu.
    • Pokud obdržíte chybovou zprávu, která se nezmiňuje chyby 10048, SQL Server 2000 určuje, že je nemožné je čekání na požadavek na připojení na portu. Proto port není otevřen.
Poznámky
  • V SQL Server 2005 obdržíte následující chybová zpráva, číslo portu nastavena na nulu (0) a je otevřen.
    ID chyby 10013 (WSAEACCES)
  • V systému Windows Server 2003 nebo Windows XP zobrazí 10013 chybová zpráva namísto 10048 chybová zpráva při použití výhradně na port, který se pokouší otevřít.
Pokud instance serveru SQL Server používá dynamické přidělování portů, připojovací řetězec, který je součástí na straně klienta serveru SQL Server Pokud uživatel nebo programátor explicitně neurčí port Cílový TCP/IP port neurčuje. Proto dotazy knihovny klienta serveru SQL server na portu UDP 1434 shromažďovat informace o cílové instance serveru SQL Server. Pokud SQL Server vrátí informace, knihovny klienta serveru SQL Server odešle data do odpovídající instanci serveru SQL Server.

Pokud je zakázána na portu UDP 1434, klienta serveru SQL Server nemůže dynamicky určit port pojmenované instance serveru SQL Server. Proto může být klient serveru SQL Server nelze se připojit k pojmenované instance serveru SQL Server. V takovém případě musíte zadat klienta serveru SQL Server dynamicky přiřazený port přijímající pojmenované instance serveru SQL Server 2008, SQL Server 2005 nebo SQL Server 2000.

Další informace získáte kliknutím na číslo článku znalostní báze Microsoft Knowledge Base:
265808Jak se připojit k serveru SQL Server pomocí starší verze serveru SQL Server


Ověření konfigurace portu instance serveru SQL Server
Poznámka: Výchozí instance serveru SQL Server vždy použít statický port.

Nejprve ověřte, zda vaše instance SQL Server má povolen protokol TCP/IP. Zkontrolujte protokol chyb serveru SQL Server Chcete-li najít port TCP/IP, který v instanci serveru SQL Server "naslouchá". Navíc SQL Server 2005 a novějších verzích můžete zkontrolovat nastavení Správce konfigurace serveru SQL. Pokud chcete zobrazit protokol chyb SQL z uvnitř aplikace, postupujte takto.

Poznámka: Pro SQL Server 2000 pomocí Query analyzer spusťte následující dotazy.
  1. Spustit SQL Server Management Studio a připojte se k instanci serveru SQL Server.
  2. Spusťte následující dotaz:
    Use master Go Xp_readerrorlog
  3. V podokně výsledků vyhledejte následující text (kde X.X.X.XIP adresa instance serveru SQL Server aY je port TCP/IP, na kterém SQL Server naslouchá):
    SQL server nenaslouchá na X.X.X.X: Y
    Poznámka: Například, pokud umístíte "SQL server nenaslouchá na 10.150.158.246: 1433" textu v podokně výsledků , 10.150.158.246 je adresa IP serveru SQL Server a 1433 je port TCP/IP, kde instance serveru SQL Server naslouchá.
Chcete-li ověřit konfiguraci portu aninstance serveru SQL Server, postupujte takto:
  1. Spusťte Editor registru.
  2. V editoru registru vyhledejte následující klíč registru:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\MSSQLServer\SuperSocketNetLib\Tcp
    Poznámka: Pokud používáte SQL Server 2005, vyhledejte následující podklíč registru:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<MSSQL.x>\MSSQLServer\SuperSocketNetLib\Tcp\IPAll
    Všimněte si hodnoty TCPDynamicPorts a TCPPort. Tyto hodnoty se zobrazí následující, v závislosti na metodě přidělování portů:
    • Přidělení statický Port
      Pokud nakonfigurujete instance serveru SQL Server pomocí statický port a dosud nerestartovali instance serveru SQL Server hodnoty registru se stanoví takto:
      TCPDynamicPorts = Poslední port, který používá
      TCPPort = Nový statický port k použití po příštím restartování; Nový statický port, který můžete nastavit pomocí nástroje Server Network Utility
      Však Pokud nakonfigurujete instance serveru SQL Server pomocí statický port a restartování instance serveru SQL Server hodnoty registru se stanoví takto:
      TCPDynamicPorts = Prázdné
      TCPPort = Nový statický port, který můžete nastavit pomocí nástroje Server Network Utility
    • Přidělování dynamických portů
      Pokud nakonfigurujete instance serveru SQL Server použití dynamické přidělování portů a dosud nerestartovali instance serveru SQL Server hodnoty registru se stanoví takto:
      TCPDynamicPorts = Prázdné
      TCPPort = 0
      Však Pokud nakonfigurujete instance serveru SQL Server použití dynamické přidělování portů a restartování instance serveru SQL Server hodnoty registru se stanoví takto:
      TCPDynamicPorts = Aktuální port, který používá
      TCPPort = Aktuální port, který používá


Konfigurace instance serveru SQL Server pomocí statický port

SQL Server 2008 a SQL Server 2005

Chcete-li konfigurovat instanci serveru SQL Server 2008 nebo SQL Server 2005 použít statický port, postupujte podle kroků popsaných v jak: Konfigurace serveru k naslouchání na portu TCP specifické (SQL Server Správce konfigurace) tématu v SQL Server 2005 Books Online nebo v SQL Server 2008 Books Online.

Konfigurovat statické port pro speciální vyhrazený Správce připojení DAC (), je nutné aktualizovat klíč registru, který odpovídá instanci aplikace. Klíče registru mohou být například následující:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.X\MSSQLServer\SuperSocketNetLib\AdminConnection\Tcp
Poznámka: "X" v "MSSQL.X"je číslo, které označuje adresář, kde je nainstalována instance pro SQL Server 2005 nebo název instance systému SQL Server 2008.

SQL Server 2000

Chcete-li konfigurovat instanci serveru SQL Server pomocí statický port, postupujte takto:
  1. Spusťte Server Network Utility. Chcete-li to provést, proveďte jednu z následujících akcí:
    • Klepněte na tlačítko Start, přejděte na příkazprogramy, přejděte na Microsoft SQL Server, andthen klepněte na Server Network Utility.
    • Klikněte na tlačítko Start a na příkaz Spustit. Do pole Otevřít zadejte následující příkaz: SVRNETCN.exea potom klepněte na tlačítko OK.
    Zobrazí se dialogové okno Nástroj pro ServerNetwork .
  2. V dialogovém okně ServerNetwork nástroj klepněte na kartu Obecné .
  3. V seznamuvýskyty na tomto serveru vyberte instanci serveru SQL Server.

    Poznámka: Pokud je zakázán protokol TCP/IP, povolte jej. V seznamu DisabledProtocols klepněte na protokolu TCP/IP a potom klepněte na tlačítko Povolit.
  4. V seznamu EnabledProtocols klepněte na položku protokol TCP/IPa potom klepněte na příkazVlastnosti.
  5. V poli výchozí port zadejte číslo portu astatic a klepněte na tlačítko OK.

    Poznámka: Statický port, který zadáte, musí se liší od v instanci serveru SQL Server aktuálně naslouchá na portu thedynamic. Forexample, pokud instance serveru SQL Server naslouchá na dynamické TCP/IPport 1400, typ aktuálně 1500 pro nový statický port.
  6. Klepněte dvakrát na tlačítko OK .
  7. Restartujte instanci serveru SQL Server.
  8. Zobrazte protokoly chyb serveru SQL Server Chcete-li ověřit, že instance serveru SQL Server používá statický port.

    Poznámka: Pokud máte clusteru instance serveru SQL Server a followthe je určena kroky v uzlu clusteru, můžete si všimnout hodnoty registru TCPDynamicPorts a TCPPort hodnoty registru na jiných uzlech clusteru stále obsahovat původní hodnoty.Whenyou přesunout skupinu SQL Server odpovídající uzlu clusteru a poté bringSQL Server online v uzlu clusteru, hodnoty registru v uzlech clusteru bude odrážet správné hodnoty.
Můžete nastavit statický port v instanci serveru SQL Server na stejné číslo portu jako dynamický port, který je používaný dříve. Postupujte následujícím způsobem
  1. Zobrazte hodnotu registru TCPDynamicPorts a TCPPort hodnotu registru k určení čísla dynamických portů, které používá starší instance serveru SQL Server.
  2. V Server Network Utility nastavte statický port na číslo portu adifferent než hodnota registru, který jste určili v kroku 1.
  3. Restartujte instanci serveru SQL Server.
  4. V Server Network Utility nastavte hodnotu registru, kterou jste zjistili v kroku 1 statický port.
  5. Restartujte instanci serveru SQL Server.


Konfigurace serveru SQL Server pomocí dynamických portů aninstance

SQL Server 2008 a SQL Server 2005

Ke konfiguraci do instance SQL Server 2008 nebo v instanci serveru SQL Server 2005 pro použití dynamických portů, používat podobné metody popsané v "jak: Konfigurace serveru k naslouchání na portu TCP specifické (SQL Server Správce konfigurace)" tématu v SQL Server 2008 Books Online nebo v SQL Server 2005 Books Online. Další informace naleznete v tématu Konfigurace sítě serveru SQL Server 2008 Books Online nebo v SQL Server 2005 Books Online.

SQL Server 2000

Při konfiguraci do instance serveru SQL Server pomocí dynamických portů, postupujte takto:
  1. Spusťte Server Network Utility. Chcete-li to provést, proveďte jednu z následujících akcí:
    • Klepněte na tlačítko Start, přejděte na příkazprogramy, přejděte na Microsoft SQL Server, andthen klepněte na Server Network Utility.
    • Klikněte na tlačítko Start a na příkaz Spustit. Do pole Otevřít zadejte následující příkaz: SVRNETCN.exea potom klepněte na tlačítko OK.
    Zobrazí se dialogové okno Nástroj pro ServerNetwork .
  2. V dialogovém okně ServerNetwork nástroj klepněte na kartu Obecné .
  3. V seznamuvýskyty na tomto serveru vyberte instanci serveru SQL Server.

    Poznámka: Pokud je zakázán protokol TCP/IP, povolte jej. V seznamu DisabledProtocols klepněte na protokolu TCP/IP a potom klepněte na tlačítko Povolit.
  4. V seznamu EnabledProtocols klepněte na položku protokol TCP/IPa potom klepněte na příkazVlastnosti.
  5. V poli výchozí port zadejte následující příkaz:0a potom klepněte na tlačítko OK.
  6. Klepněte na tlačítko OKa potom klepněte na tlačítkoOK .
  7. Restartujte instanci serveru SQL Server.
  8. Zobrazte protokoly chyb serveru SQL Server Chcete-li ověřit, že je instance serveru SQL Server pomocí dynamických portů.

    Poznámka: Pokud máte clusteru instance serveru SQL Server a followthe je určena kroky v uzlu clusteru, můžete si všimnout hodnoty registru TCPDynamicPorts a TCPPort hodnoty registru na jiných uzlech clusteru stále obsahovat původní hodnoty.Whenyou přesunout skupinu SQL Server odpovídající uzlu clusteru a poté bringSQL Server online v uzlu clusteru, hodnoty registru v uzlech clusteru bude odrážet správné hodnoty.


Poradce při potížích
Pokud klienti SQL Server instance serveru SQL Server přístup po nakonfigurování jej, aby používal statické port TCP/IP, mohou existovat následující příčiny:
  • Afirewall může blokovat zadaný TCP/IP port.
    Pokud je port, na kterém instanci serveru SQL Server naslouchá na aktuálně blokovány bránou firewall, připojení se nezdaří. Informace o konfiguraci brány firewall pro práci s SQL Server naleznete v tématu Konfigurace brány Windows Firewall umožnit přístup SQL Server v SQL Server 2008 Books Online. I když toto téma je specifické pro SQL Server 2008, většina informací se vztahuje na SQL Server 2005 a SQL Server 2000.

    Další informace získáte klepnutím na následující čísla článků znalostní báze Microsoft Knowledge Base:
    287932 Potřebné pro komunikaci přes bránu firewall na SQL čísel portů TCP/IP
    318432 Chyba: Nelze se připojit k pojmenované instanci clusteru přes bránu firewall
    968872 Postup při otevření portů brány firewall pro SQL Server v systému Windows Server 2008
  • Anotherprogram pravděpodobně používá zadaný TCP/IP port.
    Pokud zadaný TCP/IP port již používá anotherprogram, port není k dispozici pro instance serveru SQL Server a SQL Serverclients nelze se připojit k instanci serveru SQL Server.

    Thisproblem je specifický pro instanci serveru SQL Server, který je nakonfigurován pro použití astatic TCP/IP port. Tento problém se nevyskytuje pro instanci ke SQL je nakonfigurován pro použití dynamické přidělování portů. V dynamické přidělování portů pokud používá jiný program již zadaný port TCP/IP při spuštění instance SQLServer, instance SQLServer vybere nový port.

    Další informace získáte kliknutím na číslo článku znalostní báze Microsoft Knowledge Base:
    293107 Klienti nemohou komunikovat na serveru SQL Server prostřednictvím portu 1433 nebo které SQL Server naslouchá na portu
  • Pojmenované Instance serveru SQL Server naslouchá na portu 1433.
    Pokud pojmenované Instance serveru SQL Server naslouchá na portu 1433, Microsoft OLE DB Provider for SQL Server (zprostředkovatele = SQLOLEDB) a ovladač SQL Server ODBC Driver (ovladač = {SQL Server}) nelze připojit k serveru. Toto připojení dojde k přerušení instance název a číslo portu v připojovacím řetězci, jsou vynechány. Pokud není zadán žádný číslo portu, ověření ovladače název instance serveru. Pokud není název instance serveru je výchozí instance MSSQLSERVER, připojení se nedaří. Chcete-li připojení úspěšné, je nutné zadat název instance nebo číslo portu v připojovacím řetězci nebo SQL Alias.

    Poznámky
    • Nedoporučujeme, že máte pojmenované instance naslouchání na portu 1433.
    • Jiných poskytovatelů, například System.Data.SqlClient a nativní klient SQL (Provider = SQLNCLI), nelze provést kontrolu název instance a úspěšně připojit.
Odkazy
Další informace získáte klepnutím na následující čísla článků znalostní báze Microsoft Knowledge Base:
286303 Chování síťové knihovny serveru SQL Server 2000 během zjišťování dynamických portů
273673 Popis klienta připojení virtuálního serveru SQL
328383 Klienti serveru SQL Server může změnit protokoly klientské počítače pokusí o připojení k instanci serveru SQL Server
Další informace o konfiguraci serveru SQL Server naslouchat na různých portech různé adresy IP naleznete v tématu jak nakonfigurovat SQL server naslouchat na různých portech různé adresy IP? téma na následujícím webu Microsoft SQL Server podpora blogu:

Upozornění: Tento článek je přeložený automaticky

Vlastnosti

ID článku: 823938 - Poslední kontrola: 08/03/2013 07:53:00 - Revize: 10.0

Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Workgroup, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Workgroup

  • kbsqlsetup kbsql2005cluster kbconnectivity kbupdate kbsqlclient kbnetwork kbfirewall kbconfig kbregistry kbhowtomaster kbmt KB823938 KbMtcs
Váš názor
var varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write("