baza MS SQLEXPRES domyślnie po instalacji nie umożliwia obsługi połączenia z innego komputera Aby umożliwić połączenie do SQLEXPRESS z innego komputera należy: 1). Na komputerze który będzie udostępniał bazę danych /tym na którym zainstalowano SLQEXPRESS/: a) włączyć usługę SQL Browser na drugiej zakładce
b) włączyć protokół TCP/IP dla SQLEXPRESS c) po tych zamianach zrestartować komputer Po wykonaniu powyższego SQLEXPRES będzie obsługiwał przychodzące połączenie z protokołu TCP/IP (z innych komputerów)
2) Aby SQLEXPRESS obsłużył połączenie, musi wcześniej autoryzować użytkownika. W MSSQL są dwa sposoby autoryzowania; tryb Windows i tryb mieszany - czyli Windows oraz tryb SQL. Autoryzacja trybem Windows zadziała (z innych komputerów) a) jeśli są one zarejestrowane w tej samej domenie WINDOWS, oraz użytkownicy zalogowani na tych maszynach mają odpowiednie uprawnienia b) jeśli mamy sieć P2P (tylko grupy robocze) a na innym komputerze będzie zalogowany ten sam użytkownik z tym samym hasłem, jak w komputerze na którym mamy SQLEXPRESS Najczęściej mamy do czynienia z sytuacją b) - gdzie użytkownicy na różnych komputerach mają inne loginy/hasła i musimy posłużyć się autoryzacją typu SQL, gdzie do zestawienia połączenia z systemem MS SQL musimy podać login użytkownika SQL oraz jego hasło (zwykle będzie to użytkownik sa /system administrator/ z nadanym hasłem podczas instalacji SQLEXPRES) Niestety podczas instalacji SQLEXPRESS domyślnie włączona jest opcja autoryzacji tylko dla Windows - i jeśli nie zostało to zmienione podczas instalacji to należy teraz włączyć obsługę trybu autoryzacji SQL. Można to zrobić na dwa sposoby: a) zmienić wartość klucza "LoginMode" w rejestrze (rys. poniżej) z wartości 1 (tylko autoryzacja Windows) na 2 (tryb mieszamy) b) pobrać i zainstalować darmowe narzędzie "Microsoft SQL Server Managment Studio", następnie wyświetlić właściwości naszego serwera
i we właściwościach zakładki "Security" włączyć tryb "SQL Serwer and Windows Authentication mode"
pozostało jeszcze ustalić hasło dla użytkownika "sa" zaznaczając użytkownika sa i wyświetlając jego właściwości
4) Teraz możemy przeprowadzić próbę próbami połączenia z innego komputera do SQLEXPRESS. Wcześniej koniecznie należy wyłączyć na czas prób zaporę Windows (lub ew. zapory innych firm) na komputerze który udostępnia serwer SQLEXPRESS 5) Następnie, na innym komputerze (z którego będziemy się łączyć do SQLEXPRESS) należy uruchomić dowolny plik UDL, np.tgsoft.udl
gdzie podajemy a) nazwę sieciową (NETBIOS) komputera na którym jest zainstalowany SQLEXPRESS, a po znaku backslash \ nazwę instancji serwera MSSQL (dla SQLEXPRESS domyślnie będzie to NAZWA_KOMPUTERA\SQLEXPRESS) b) użytkownika sa i jego hasło, c) testujemy połączenie - jeśli połączenie powiodło się należy skonfigurować zaporę sieciową (opis poniżej) na komputerze z zainstalowanym SQLEXPRESS i następnie włączyć ją. 6) Zapora sieciowa na komp. udostępniającym SQLEXPRESS powinna być skonfigurowana w nast. sposób: a) należy dodać dwa wyjątki dla zapory; pierwszy dotyczy usługi SQL Browser ułatwiającej odnajdywanie SQL innym komputerom (poniższy port 1434 UDP jest domyślnym portem dla SQL BROWSER) - należy kliknąć "Dodaj port"
drugi dotyczy samej usługi serwera SQL - należy dodać "Dodaj program" a następnie wskazać program sqlserv.exe który domyślnie powinien znajdować się w katalogu C:\Program files\microsoft SQL Server\...\Binn\ (rysunek poniżej).
b) po dodaniu wyjątków należy włączyć zaporę sieciową i przetestować czy nadal można ustanowić połączenie z SQLEXPRESS z komputera zdalnego Jeżeli połączenie (po włączeniu zapory) nie powiodło się to polecam poszukać pomocy w b. dobrej instrukcji, którą można pobrać z sieci internet, (fragmenty dot. konfigurowania zapory) http://www.infolech.pl/pub/sql_server_2005_express.pdf/