Serwer SQL, podłączanie R2faktury i R2fakturyPRO

Lista najczęściej zadawanych pytań dotyczących korzystania z programu R2faktury, R2fakturyPRO opracowana przez pracowników serwisu Reset2.
ODPOWIEDZ
Awatar użytkownika
Inez
 
Posty: 344
Rejestracja: czw, 21 kwietnia 2005 14:23
Lokalizacja: SYMFONIA sp. z o.o.
Kontakt:

Serwer SQL, podłączanie R2faktury i R2fakturyPRO

Post autor: Inez » wt, 18 grudnia 2012 9:06

1. Wstęp
Programy R2faktury i R2fakturyPRO zawsze łączą się z serwerem SQL, czy to w pracy z lokalnym serwerem SQL czy po sieci. Należy pamiętać o tym, że dane do programu znajdują się na komputerze serwera i obsługiwane są przez serwer SQL, czyli program pracujący jako usługa na komputerze-serwerze. W związku z tym, żeby stacje robocze mogły korzystać z danych, serwer (komputer) musi być włączony oraz serwer SQL (program-usługa) musi być uruchomiony.

Opisane tutaj przykłady odnoszą się do serwera SQL zainstalowanego z naszego programu instalacyjnego - instancja serwera nazywa się wtedy RESET2.

2. Połączenie lokalne
Przy lokalnym serwerze SQL (gdy programy R2faktury i R2fakturyPRO są uruchamiane na tym samym komputerze, na którym działa usługa serwera SQL) określenie połączenia do bazy danych po nazwie serwera może wyglądać np tak:
Obrazek
gdzie w wierszu Serwer mogą być przykładowo takie wartości dla standardowej instalacji

(local)\RESET2
localhost\RESET2
127.0.0.1\RESET2


a logować do serwera można się jako użytkownik Windows (zaznaczona opcja Zaloguj się jako użytkownik Windows w okienku tworzenia/Zmiany bazy danych)

3. Połączenie zdalne
Przy połączeniu po sieci do istniejącej bazy serwera SQL nie możemy się odnosić do nazwy lokalnej local, localhost tylko musimy się odnieść do adresu serwera jako nazwy komputera lub adresu IP na którym pracuje serwer SQL:
Obrazek
nazwa_komputera\RESET2
192.168.0.1\RESET2


oczywiście adres IP 192.168.0.1 jest przykładowy, należy ustalić adres IP komputera na którym pracuje serwer SQL.
Nie możemy też po sieci logować się do serwera jako użytkownik Windows - należy więc wpisać login i hasło do serwera SQL - standardowo przy instalacji Serwera SQL z naszego programu instalacyjnego użytkownik to: sa a hasło to: www.RESET2.pl
Warto pamiętać, że lokalnie (jak w pkt 2.) też możemy podłączyć R2faktury i R2fakturyPRO ustawiając takie "zdalne" parametry połączenia.

Przy pierwszym uruchomieniu programu na dodatkowym stanowisku nie tworzymy nowej bazy - pomijamy więc okienko dialogowe dotyczące tworzenia bazy danych (przycisk Powrót). Program uruchomi się "pusty" i w tym momencie możemy wybrać istniejący serwer i bazę danych poprzez menu Zbiory -> Narzędzia -> Zmiana bazy danych.

4. Zapora internetowa
Jeśli na komputerach (serwerze i stacjach roboczych) zainstalowane jest oprogramowanie zapory internetowej (firewall), to należy je odpowiednio skonfigurować tak, żeby były dostępne odpowiednie porty i możliwość połączenia z konkretnym numerem IP serwera.
Przy pierwszych próbach połączenia i konfigurowania, pomijając kwestie bezpieczeństwa, wygodnie wyłączyć zapory na komputerze-serwerze i końcówkach. Po uzyskaniu połączenia z bazą danych z komputera-końcówki można włączyć zapory i zacząć je konfigurować, sprawdzając czy połączenie nadal działa.

Minimalna konfiguracja powinna obejmować dodanie do wyjątków na zaporze plików sqlserver.exe oraz sqlbrowser.exe.
Informacje o ścieżce, w której należy szukać w/w aplikacji można znaleźć poprzez narzędzie SQL Server Configuration Manager dostępne przez menu Start
Start -> Programy->Microsoft SQL Server 200x->Configuration Tools->SQL Server Configuration Manager

Wybieramy w lewej sekcji SQL Server Services, a następnie odpowiednio SQL Server (RESET2), przechodzimy na zakładkę Service i szukamy ścieżki aplikacji w wierszu Binary Path; ścieżka ta powinna zostać dodana do wyjątków na zaporze.
Analogicznie postępujemy w przypadku SQL Server Browser.


5. Porty SQL 2000
W przypadku serwera SQL2000* firmy Microsoft do nawiązania połączenia wykorzystywane są porty UDP 1434 oraz TCP 1433.
Port UDP 1434 służy tak naprawdę do rozgłaszania nazwy serwera w sieci (np RESET2) jeżeli więc nie udostępnimy portu 1434 dla usługi SQL Server Browser wtedy przy określeniu serwera nie możemy podać nazwy instancji (np. adres_serwera\RESET2) tylko wprost numer portu przydzielonego do instancji (np. adres_serwera,1433).

6. Porty SQL 2005, 2008, 2012
W przypadku serwerów Microsoft SQL2005 lub Microsoft SQL2008 (dalej nazywanym SQL200x) do rozgłaszania nazwy instancji też jest używany port UDP 1434, a port TCP obsługujący połączenie z bazą danych określony jest we właściwościach instancji - można zobaczyć numer portu oraz adres IP poprzez narzędzie
SQL Server Configuration Manager dostępne przez menu Start
Start -> Programy->Microsoft SQL Server 200x->Configuration Tools->SQL Server Configuration Manager

Wybieramy w lewej sekcji SQL Server Network Configuration po czym wybieramy instancje serwera np Protocols for RESET2, w prawej sekcji pojawią się opcjonalne protokoły

Kod: Zaznacz cały

Shared Memory  Enabled
Named Pipes    Enabled
TCP/IP         Enabled
VIA            Disabled
podwójnym kliknięciem wybieramy TCP/IP, upewniamy się, że opcja Enabled jest Yes i wybieramy drugą zakładkę IP Adresses.
Pojawi się lista podzielona na sekcje - każda sekcja to jeden adres IP - szukamy interesującego nas adresu IP - zazwyczaj w sieci lokalnej są to adresy zaczynające się na 192.168.x.x lub 10.0.x.x .
Opcje Active i Enabled powinny być Yes a opcja TCP Dynamic Ports powinna mieć wartość 0 (zero). Na samym dole listy jest sekcja IPAll - tutaj się dowiemy na jakich portach nasłuchuje serwer SQL 200x. W standardowej konfiguracji TCP Dynamic Ports posiada jakąś wartość numeryczną powyżej kilkunastu tysięcy (np 45350) a TCP Port jest pusty. Owa duża wartość jest portem - i w na tym przykładzie łącząc się z drugiego komputera, w okienku "Wybierz bazę danych" w wierszu Serwer wpisujemy:
adres_serwera,45350
gdzie adres_serwera to albo adres IP np 192.168.0.1 albo nazwa komputera np SERWER.
Oczywiście jeśli wcześniej skonfigurowaliśmy (lub wyłączyliśmy) firewall na obu komputerach oraz usługa SQL Server Browser działa na komputerze-serwerze, to po rozwinięciu wiersza Serwer - nazwa komputera i nazwa instancji powinna pojawić się sama i nie ma potrzeby wpisywania adresów IP i portów.

7. Połączenie
Przy rozwijaniu wiersza Baza danych w którym jest wpisana początkowo jest baza faktury - po rozwinięciu powinna się pojawić nazwa bazy danych (może, to być nadal nazwa faktury) - klikamy ok i wszystko powinno działać.
Jeśli nazwa bazy danych zniknie - puste miejsce oznacza brak połączenia z bazą danych i należy sprawdzić połączenie - adresy, porty, firewall i logowanie do serwera SQL.


8. Uwagi końcowe
Bardzo odradzamy używanie sieci WiFi (WLAN) z powodu zawodności i opóźnień transmisji.
Przydatne narzędzie do sprawdzania sieci to ping (opis http://technet.microsoft.com/pl-pl/libr ... s.10).aspx)


*) odradzamy używania serwera MS SQL 2000 (MSDE)
Ostatnio zmieniony wt, 26 sierpnia 2014 13:53 przez Inez, łącznie zmieniany 1 raz.
Awatar użytkownika
Inez
 
Posty: 344
Rejestracja: czw, 21 kwietnia 2005 14:23
Lokalizacja: SYMFONIA sp. z o.o.
Kontakt:

Problemy z serwerem SQL w przypadku połączenia lokalnego

Post autor: Inez » czw, 21 sierpnia 2014 14:57

Może się zdarzyć że pewnego dnia program R2faktury nie uruchamia się chociaż dzień wcześniej wszystko działało normalnie. Pojawia się komunikat:
Błąd! Nie można się połączyć z bazą danych

W takim przypadku w pierwszej kolejności należy sprawdzić czy serwer SQL pracuje.
Możemy to sprawdzić poprzez narzędzie serwera SQL:
SQL Server Configuration Manager dostępne przez menu Start
Start -> Programy->Microsoft SQL Server 20xx->Configuration Tools->SQL Server Configuration Manager
Po lewej wybieramy SQL Server Services by po prawej zobaczyć listę usług z ich stanem (State) jeśli któryś wiersz ma napisane w kolumnie State Stopped/Zatrzymany klikamy nań prawym przyciskiem i wybieramy Start/Uruchom (w poszukiwaniach wiesza pomijamy usługę nazwaną SQL Server Agent).

Jeśli serwer ze stanu Stopped/Zatrzymany wszedł w stan Running/Uruchomiony program R2faktury powinien się uruchomić normalnie. Jeśli nie - należy sprawdzić opcje loginu, sieci itd - opisane to jest w poście powyżej.

Na marginesie - serwer SQL lubi się zatrzymać po aktualizacjach Windowsa.
---------------------------------------------------------------------------------
Zapraszamy do Społeczności Symfonii.
Zachęcamy do dzielenia się wiedzą i zadawania pytań w obszarze migracji z programów linii R2firma.
Krótkie wyjaśnienie czym jest Społeczność i jak z niej korzystać.
ODPOWIEDZ