Nie mogę się połączyć z serwerem SQL – co zrobić ? - Baza Wiedzy programu Comarch ERP Optima Nie mogę się połączyć z serwerem SQL – co zrobić ? - Baza Wiedzy programu Comarch ERP Optima

Nie mogę się połączyć z serwerem SQL – co zrobić ?

Należy sprawdzić:

Czy została podana prawidłowa nazwa serwera SQL?

W kreatorze Przygotowanie do uruchomienia systemu w polu Serwer MS SQL należy wpisać  prawidłową nazwę serwera bazy danych (domyślna nazwa to nazwa_komputera\optima, w wersji 17 Comarch ERP Optima i wcześniejszych domyślną nazwą serwera bazy danych była nazwa_komputera\cdn_optima)

Czy serwer bazy danych jest uruchomiony?

W celu sprawdzenia, czy uruchomiony jest serwer bazy danych Microsoft SQL Server należy uruchomić narzędzie konfiguracyjne SQL Server Configuration Manager
Start \ Wszystkie programy \ Microsoft SQL Server \ Configuration Tools \ SQL Server Configuration Manager

Należy sprawdzić, czy są uruchomione poniższe usługi:

    • SQL Server (nazwa_instancji) domyślnie SQL Server (OPTIMA)
    • SQL Server Browser

Czy serwer bazy danych jest udostępniony do pracy w sieci?

Jeśli łączymy się z końcówki do serwera należy upewnić się, że na serwerze istnieją wyjątki w zaporze sieciowej dla instancji serwera oraz SQL Browser. Odpowiednie wyjątki w
systemowej zaporze sieciowej można dodać poprzez instalację Comarch ERP Menadżer Licencji, patrz: W jaki sposób zainstalować Comarch ERP Menadżer Kluczy?. Oprócz tego należy upewnić się, czy w systemie nie działają dodatkowe zapory innych producentów – należy wtedy dodać w nich odpowiednie wyjątki.

Serwer powinien posiadać także włączony protokół TCP/IP. Można to sprawdzić wybierając opcję Protocols for OPTIMA.

Czy w sieci działa rozwiązywanie nazw na adresy IP?

Można to sprawdzić za pomocą systemowego polecenie ping. Jego wywołanie z linii komend powinno mieć postać: ping nazwa_komputera. Wynikiem takiego polecenia powinien być adres IP podanego komputera. Jeżeli nie jest zwracany adres IP, wtedy konieczne jest ustawienie aliasu.
W celu utworzenia aliasu należy przejść do odpowiedniego katalogu i uruchomić program:
C:\Windows\system32\cliconfg.exe – systemy 32 bitowe
C:\Windows\SysWow64\cliconfg.exe – systemy 64 bitowe
Typ systemu operacyjnego można sprawdzić we właściwościach komputera.

 

Uwaga
Wpisując komendę cliconfg w wierszu poleceń systemu Windows (Start / Uruchom / cliconfg) domyślnie uruchamiany jest program z katalogu C:\Windows\system32
Po uruchomieniu odpowiedniego programu przechodzimy na zakładkę alias i ustawiamy powiązanie między nazwą komputera, a jego adresem IP. W polu „Alias serwera” podajemy pełną nazwę instancji silnika SQL (nazwa_hosta\nazwa_instancji). Zaznaczamy biblioteki sieciowe TCP/IP, natomiast w polu „Nazwa serwera” w miejsce nazwy hosta podajemy jego adres IP. Adres IP możemy sprawdzić wpisując komendę ipconfig w wierszu poleceń systemu Windows (Start/ Uruchom/ cmd).
Uwaga
W przypadku gdy problem z połączeniem występuje w obrębie tego samego komputera można podać lokalny adres IP 127.0.0.1 (interfejs loopback).
 
Zadaniem aliasu jest więc pomoc w odnalezieniu odpowiedniego adresu IP serwera, gdy rozwiązywanie nazw w sieci nie działa prawidłowo.
Czasem problemem w ustanawianiu połączenia do serwera SQL jest także nie odnalezienie odpowiedniego portu, na którym nasłuchuje serwer SQL. Wówczas warto odznaczyć parametr 'Określ port dynamicznie’ i wpisać numer portu, na którym nasłuchuje serwer SQL. Numer portu możemy sprawdzić w errorlogu serwera SQL. Domyślnie plik znajduje się w lokalizacjach:
C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\ERRORLOG – lokalizacja dla serwera SQL 2005
lub
C:\Program Files (x86)\Microsoft SQL Server\MSSQL11.OPTIMA\MSSQL\Log\ERRORLOG – lokalizacja dla serwera SQL 2012
Plik można otworzyć za pomocą notatnika. Informacja o numerze portu (xxxx) występuje po słowach Server is listening on [ 'any’ <ipv4> xxxx]
Uwaga
Jeśli alias zostanie nazwy inaczej niż nazywa się serwer SQL należy pamiętać, aby w programie Comarch ERP Optima konfigurując połączenie do serwera SQL podać w polu Server MS SQL nazwę aliasu.