środa, 24 lutego 2010

Twój ISP a baza danych

Ostatnio po raz kolejny miałem problemy aby połączyć się z SQL Serverem. Dobra, to nic niesamowitego, zwłaszcza jak się grzebie na serwerze i w ustawieniach firewalla. Ale tym razem w końcu udało mi się znaleźć przyczynę, którą nazwę po imieniu: Multimedia Polska. S.A.

Po raz pierwszy problem pojawił się podczas próby łączenia z SQL Serverem na http://studentlive.pl/. Wiedziałem że problem mam korzystając z połączenia dostarczanego przez Multimedia, jednak winy upatrywałem po stronie serwerów Microsoft Innovation Center, które (jak myślałem) odrzucały moje publiczne IP. Publicznie się teraz kajam, że racji nie miałem z tym filtrowaniem IP, a usługa MIC działała bezproblemowo.
Problem "rozwiązałem" jadąc na PWr i pisząc tam "tunel SQL", czyli prostą stronkę .aspx pozwalającą wykonywać polecenia SQL do serwera o podanym connection string i wyświetlającą wyniki. Rozwiązanie mało bezpieczne, ale jak na zrobienie jednej laborki wystarczające ;)

Ostatnio problem powrócił przy okazji innego serwera, gdzie obok IIS stoi SQL Server. Tym razem jednak filtrowanie IP nie mogło wchodzić w grę, ponieważ:

1. Na IIS wchodzę bez problemu.
2. Admina znam (i pozdrawiam tutaj) i wiem, że mnie nie filtruje ;)

"Wina" jak się okazało leży po stronie Multimedia Polska - pakiety na porcie 1433 (domyślny port SQL Servera) są filtrowane przez mojego providera.
Zmiana portu na którym nasłuchuje SQL Server (a dokładniej brama przekierowująca do niego) okazała się wystarczającym rozwiązaniem ;)

Przy okazji - jak podać nietypowy numer portu w connection string?

Data Source=serwer:port;Initial Catalog=bazada;User Id=user;Password=pass; ? - nie.

Data Source=serwer,port;Initial Catalog=bazada;User Id=user;Password=pass; - przecinek zamiast dwukropka robi różnicę ;)

Brak komentarzy:

Prześlij komentarz