Tak, przeczytałem. Jak znaleźć port dla MS SQL Server 2008?
brak szczęścia.
telnet 1433
zwraca połączenie nie powiodło się, więc muszę określić inny port.
Próbowałem użyć
netstat -abn
ale nie widzę sqlservr.exe ani czegoś podobnego na tej liście.
Dlaczego tak trudno jest znaleźć ten port? : /
Odpowiedzi:
Spróbuj tego:
http://www.mssqltips.com/sqlservertip/2495/identify-sql-server-tcp-ip-port-being-used/
źródło
bardzo prosty. zanotuj identyfikator PID programu sqlsrvr.exe z menedżera zadań, a następnie uruchom następujące polecenie:
pokaże połączenia TCP i UDP twojego serwera SQL (w tym porty) standard to 1433 dla TCP i 1434 dla UDP
przykład:
źródło
To jest ten, który działa dla mnie:
źródło
Jeśli możesz uruchomić Menedżera konfiguracji serwera Sql> Konfiguracja sieci programu SQL Server> Twoje wystąpienie> TCP / IP> Właściwości
źródło
Jeśli uruchomiłeś "netstat -a -b -n" (z wiersza poleceń z podwyższonym poziomem uprawnień) i nie widzisz w ogóle "sqlservr.exe", oznacza to, że usługa SQL Server nie jest uruchomiona lub jej biblioteka sieciowa TCP / IP jest niepełnosprawny.
Uruchom Menedżera konfiguracji programu SQL Server (Start | Wszystkie programy | Microsoft SQL Server 2008 | Narzędzia konfiguracyjne).
Przejdź do usług SQL Server. W prawym okienku poszukaj SQL Server (). Czy to się zatrzymało? Jeśli tak, zacznij.
Przejdź do SQL Server Network Configuration (lub SQL Server Network Configuration (32-bit), odpowiednio), a następnie Protocols for. W prawym okienku poszukaj „TCP / IP”. Czy to jest wyłączone? Jeśli tak, włącz ją, a następnie uruchom ponownie usługę SQL Server.
Zauważ, że ID instancji będzie MSSQLSERVER dla domyślnej instancji.
Należy również pamiętać, że nie musisz włączać biblioteki sieciowej TCP / IP, aby połączyć klienta z usługą. Klienci mogą również łączyć się za pośrednictwem biblioteki sieciowej pamięci współużytkowanej (jeśli klient znajduje się na tym samym komputerze) lub biblioteki sieciowej potoków nazwanych.
źródło
Może nie używa protokołu TCP / IP
Przyjrzyj się Menedżerowi konfiguracji programu SQL Server, aby zobaczyć, jakich protokołów używa.
źródło
W naszym przedsiębiorstwie nie mam dostępu do serwera MSSQL, więc nie mogę uzyskać dostępu do tabel systemowych.
U mnie działa:
Wireshark
(uruchom jako Administrator, wybierz Interfejs sieciowy), podczas otwierania połączenia z serwerem.ping
ip.dst == x.x.x.x
Port jest pokazany w kolumnie
info
w formaciesrc.port -> dst.port
źródło
Oto kolejny skrypt, którego używam:
źródło
Spróbuj włączyć protokół przez: Menedżer konfiguracji > Serwer SQL Konfiguracja sieci > Protokoły dla MSSQLSERVER > właściwości TCP / IP
źródło
spróbuj raz: -
źródło
Programy SQL Server 2000 | MS SQL Server | Narzędzie sieciowe klienta | Wybierz TCP_IP, a następnie Właściwości
Programy SQL Server 2005 | SQL Server | Menedżer konfiguracji programu SQL Server | Wybierz Protocols for MSSQLSERVER lub wybierz Client Protocols i kliknij prawym przyciskiem myszy TCP / IP
źródło
Więcej tam: https://docs.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-tcp-listener-states-transact-sql?view=sql-server -2017
źródło
Inną opcją może być odczytanie rejestru systemu Windows. Używając PowerShell możesz zrobić coś takiego:
Upewnij się, że ten skrypt PowerShell jest uruchamiany na serwerze hosta (który obsługuje Twoje wystąpienie SQL / instalację programu SQL Server), co oznacza, że musisz najpierw uruchomić RDP na serwerze SQL / Box / VM, a następnie uruchomić ten kod.
HTH
źródło