Czerwony napis brak sygnału na ciemnym ekranie

Program księgowo-magazynowy nie startuje, błąd połączenia z bazą

Gdy program księgowo-magazynowy odmawia startu i wyświetla błąd połączenia z bazą danych, praca całej firmy staje w miejscu – nie da się wystawić faktury ani sprawdzić stanu magazynu. W większości przypadków przyczyna leży po stronie serwera SQL, sieci lub uszkodzonej konfiguracji połączenia, a nie samej aplikacji.

Błąd połączenia z bazą danych pojawia się zwykle po aktualizacji systemu Windows, restarcie serwera, zmianie adresu IP komputera z bazą lub wygaśnięciu usługi silnika SQL (np. Microsoft SQL Server, Firebird). Program firmowy typu Subiekt, Insert GT/nexo, Comarch Optima czy Symfonia komunikuje się z bazą przez konkretny port i nazwę instancji – jeśli którykolwiek z tych elementów się zmieni, aplikacja nie znajdzie serwera.

Objaw może wyglądać różnie. Czasami program zamyka się zaraz po uruchomieniu, innym razem pojawia się komunikat o braku serwera, przekroczonym czasie oczekiwania, nieprawidłowym haśle albo niemożności otwarcia bazy. Warto zwrócić uwagę na dokładną treść błędu, ponieważ informacja o „odmowie dostępu” wskazuje na inny problem niż komunikat o „braku połączenia z serwerem”. Nie należy od razu reinstalować programu. Ponowna instalacja aplikacji często nie zmienia niczego, ponieważ problem znajduje się w usłudze bazodanowej, sieci lub ustawieniach serwera.

Najczęstsze przyczyny błędu połączenia

Zanim zaczniemy naprawę, warto sprawdzić kilka typowych źródeł problemu, bo pozwala to szybko zawęzić diagnozę.

  • Usługa SQL Server (np. MSSQLSERVER lub nazwana instancja) jest zatrzymana lub ustawiona na start ręczny.
  • Zapora sieciowa Windows blokuje port 1433 lub inny port bazy danych po aktualizacji systemu.
  • Zmienił się adres IP komputera-serwera, a stacje robocze łączą się na starym adresie.
  • Wygasła licencja lub limit połączeń w wersji Express silnika SQL.
  • Plik konfiguracyjny połączenia (connection string) uległ uszkodzeniu lub został nadpisany.

Do tej listy można dodać również problemy z nazwą komputera, wyłączonym protokołem TCP/IP, zatrzymaną usługą SQL Browser oraz błędnie działającą siecią lokalną. Zdarza się, że po wymianie routera lub zmianie ustawień DHCP serwer otrzymuje inny adres. Wtedy program na jednym komputerze może działać poprawnie, ponieważ korzysta z połączenia lokalnego, natomiast pozostałe stanowiska przestają widzieć bazę.

Przyczyną może być także brak wolnego miejsca na dysku serwera. Silnik SQL potrzebuje miejsca na pliki bazy, dzienniki transakcji oraz pliki tymczasowe. Gdy dysk systemowy albo dysk z bazą zostanie zapełniony, usługa może nie uruchomić się prawidłowo, a program księgowo-magazynowy zgłosi jedynie ogólny błąd połączenia.

Diagnostyka krok po kroku

Naprawę zaczynamy od strony serwera. Sprawdzamy w menedżerze usług Windows, czy usługa bazy danych faktycznie działa, a następnie testujemy połączenie sieciowe ze stacji roboczej do serwera – najprościej przez telnet na odpowiedni port lub narzędzie SQL Server Configuration Manager. Jeśli usługa działa lokalnie, ale nie widać jej z innych komputerów, winny jest zwykle firewall lub protokół TCP/IP wyłączony w konfiguracji instancji SQL.

Pierwszym krokiem jest ustalenie, czy problem dotyczy wszystkich stanowisk, czy tylko jednego komputera. Jeżeli program nie uruchamia się nigdzie, należy skontrolować serwer, usługę bazy danych i jej logi. Jeżeli nie działa tylko jedno stanowisko, bardziej prawdopodobne są lokalne ustawienia sieci, uszkodzona konfiguracja programu, zapisane poświadczenia lub problem z komputerem użytkownika.

Następnie warto sprawdzić podstawową komunikację w sieci. Komputer roboczy powinien widzieć serwer po jego nazwie albo adresie IP. Brak odpowiedzi może oznaczać problem z kablem, przełącznikiem sieciowym, kartą sieciową, profilem sieci Windows lub konfiguracją zapory. Sam fakt, że działa internet, nie potwierdza poprawnego działania sieci lokalnej. Dostęp do stron internetowych może być prawidłowy, podczas gdy komunikacja z portem bazy danych pozostaje zablokowana.

Kolejny etap to weryfikacja usługi SQL. W panelu usług Windows należy sprawdzić, czy właściwa instancja jest uruchomiona oraz czy nie zatrzymała się po restarcie komputera. W przypadku nazwanej instancji trzeba również ustalić jej dokładną nazwę. Wpisanie w programie samej nazwy serwera, gdy wymagana jest nazwa serwera wraz z instancją, może skutkować komunikatem o braku połączenia, mimo że baza działa.

W konfiguracji silnika trzeba sprawdzić, czy aktywny jest protokół TCP/IP oraz jaki port został przypisany do instancji. Nie zawsze będzie to port 1433. W niektórych instalacjach używany jest port dynamiczny albo inny port stały. Dlatego odblokowanie przypadkowego portu w zaporze nie rozwiąże problemu, jeśli aplikacja korzysta z innego ustawienia.

Sprawdzenie konfiguracji programu

Program księgowo-magazynowy przechowuje informacje o serwerze, nazwie instancji, bazie danych i sposobie uwierzytelniania. W zależności od aplikacji ustawienia te mogą znajdować się w pliku konfiguracyjnym, rejestrze Windows albo w osobnym narzędziu administracyjnym. Po aktualizacji, przywróceniu kopii systemu lub zmianie profilu użytkownika konfiguracja może zostać zastąpiona wartościami domyślnymi.

Przed zmianą ustawień należy zapisać istniejącą konfigurację. Ważne jest, aby nie kasować bez sprawdzenia plików zawierających dane połączenia. Warto porównać ustawienia sprawnego stanowiska z komputerem, na którym występuje błąd. Jeżeli oba komputery powinny łączyć się z tą samą bazą, nazwa serwera, instancji i baza docelowa powinny być zgodne. Różnica w jednym znaku lub użycie starego adresu IP może wystarczyć do przerwania połączenia.

Trzeba również rozróżnić uwierzytelnianie Windows od logowania za pomocą użytkownika SQL. Zmiana hasła, wyłączenie konta, brak uprawnień albo przejście na inny sposób logowania może spowodować, że serwer jest widoczny, ale aplikacja nie może otworzyć bazy. W takim przypadku ponowne uruchomienie programu nie przyniesie efektu, ponieważ błąd dotyczy autoryzacji, a nie samej dostępności serwera.

Firewall, antywirus i aktualizacje Windows

Zapora systemowa może blokować połączenia po aktualizacji Windows, zmianie profilu sieci albo instalacji nowego programu ochronnego. Szczególnie często problem pojawia się wtedy, gdy sieć zostanie rozpoznana jako publiczna zamiast prywatnej. Reguły zezwalające na komunikację w sieci firmowej mogą wówczas nie być stosowane.

Do sprawdzenia pozostają reguły dla aplikacji SQL, portu TCP oraz usługi SQL Browser, jeśli dana konfiguracja jej wymaga. Nie należy jednak wyłączać całej zapory na stałe. Taki test może pomóc potwierdzić kierunek diagnozy, ale po sprawdzeniu trzeba przywrócić ochronę i utworzyć właściwą, ograniczoną regułę. Podobnie należy postępować z programem antywirusowym, który czasami blokuje usługę, pliki bazy lub komunikację sieciową po aktualizacji.

Jeżeli problem pojawił się bezpośrednio po aktualizacji, warto sprawdzić historię aktualizacji i dzienniki systemowe. Nie oznacza to automatycznie, że aktualizacja uszkodziła program. Często zmienione zostają zasady bezpieczeństwa, profil sieci albo sposób uruchamiania usług. Diagnoza powinna opierać się na porównaniu stanu sprzed i po wystąpieniu problemu.

Gdy działa tylko komputer z bazą

To jeden z najbardziej charakterystycznych scenariuszy. Na serwerze aplikacja otwiera bazę, ale na stanowiskach roboczych pojawia się błąd. Zwykle oznacza to, że sama baza jest dostępna lokalnie, natomiast połączenia przychodzące są blokowane lub wskazują na niewłaściwy adres.

Należy sprawdzić, czy serwer ma stały adres IP albo poprawnie działającą rezerwację DHCP. Jeśli adres zmienia się po każdym restarcie, stacje robocze mogą raz łączyć się poprawnie, a innym razem trafiać w nieaktualny adres. Stabilniejszym rozwiązaniem jest użycie właściwej nazwy serwera w konfiguracji oraz uporządkowanie adresacji sieci, zgodnie z możliwościami zastosowanej infrastruktury.

Warto też skontrolować, czy wszystkie komputery znajdują się w tej samej sieci i korzystają z właściwego połączenia. Podłączenie jednego stanowiska do sieci gościnnej, dodatkowy router albo aktywny tunel VPN może odseparować komputer od serwera. W takiej sytuacji program zachowuje się prawidłowo, tylko nie ma drogi do bazy.

Uszkodzenie bazy danych i kopia zapasowa

Nie każdy błąd połączenia oznacza wyłącznie problem sieciowy. Jeżeli usługa uruchamia się i zatrzymuje, w logach pojawiają się błędy odczytu plików albo aplikacja przestała działać po awarii zasilania, trzeba brać pod uwagę uszkodzenie bazy lub systemu plików. Próby wielokrotnego uruchamiania, ręcznego przenoszenia plików i instalowania przypadkowych narzędzi naprawczych mogą utrudnić późniejsze odzyskanie danych.

Przed ingerencją w bazę należy sprawdzić, czy istnieje aktualna kopia zapasowa oraz kiedy została wykonana. Kopia powinna być przechowywana w miejscu niezależnym od głównego komputera, ponieważ awaria dysku lub serwera może objąć jednocześnie bazę i znajdujące się obok kopie. Jeżeli kopia jest dostępna, nie należy jej nadpisywać podczas eksperymentów diagnostycznych.

W przypadku podejrzenia uszkodzenia bazy bezpieczniej jest zatrzymać niepotrzebne próby logowania, zabezpieczyć pliki i ustalić kolejność działań z osobą, która zna konkretny silnik SQL oraz używany program. Celem powinno być najpierw zachowanie danych, a dopiero później przywrócenie wygodnego dostępu do aplikacji.

Najczęstsze błędy użytkowników podczas naprawy

Jednym z częstych błędów jest reinstalacja programu bez sprawdzenia serwera. Może ona usunąć lokalne ustawienia, ale nie uruchomi zatrzymanej usługi SQL ani nie odblokuje portu. Ryzykowne jest również przywracanie przypadkowego pliku konfiguracyjnego znalezionego w internecie. Taki plik może zawierać nieprawidłową nazwę bazy, dane logowania albo ustawienia niepasujące do danej wersji programu.

Nie należy także usuwać bazy danych w celu „wyczyszczenia problemu”. Błąd startu aplikacji nie jest powodem do kasowania danych. Podobnie nie powinno się zmieniać nazw plików bazy, przenosić ich między instalacjami ani uruchamiać narzędzi naprawczych bez kopii zapasowej i wiedzy o skutkach operacji.

Kiedy potrzebna jest pomoc informatyka

Część błędów da się naprawić samodzielnie, restartując usługę lub odblokowując port. Jednak gdy baza danych jest uszkodzona, licencja programu wygasła w nieoczekiwanym momencie albo zmieniła się infrastruktura serwerowa, samodzielne majstrowanie przy konfiguracji może pogłębić problem i doprowadzić do utraty danych. W takich sytuacjach zdalna diagnostyka przez serwis IT pozwala bezpiecznie przywrócić połączenie bez przestoju w pracy firmy.

Pomoc specjalisty jest szczególnie wskazana, gdy błąd powtarza się po każdym restarcie, dotyczy wielu stanowisk, pojawia się po awarii zasilania albo towarzyszą mu nietypowe dźwięki dysku i komunikaty systemowe. Informatyk może przeanalizować logi usługi, sprawdzić komunikację na właściwym porcie, zweryfikować uprawnienia oraz ocenić stan kopii zapasowych.

Dobrze przygotowana diagnostyka powinna obejmować nie tylko uruchomienie programu, lecz także sprawdzenie, czy można otworzyć bazę na kilku stanowiskach, wystawić dokument testowy i odczytać dane magazynowe. Dopiero taki test potwierdza, że przywrócono cały przepływ danych, a nie tylko zlikwidowano pojedynczy komunikat przy starcie.

Jak ograniczyć ryzyko powtórzenia problemu

Po usunięciu awarii warto uporządkować konfigurację. Serwer powinien mieć stabilną nazwę i adres, usługi bazodanowe powinny uruchamiać się automatycznie, a reguły zapory muszą być opisane i dopasowane do rzeczywiście używanych portów. Należy również zapisać informacje o nazwie instancji, lokalizacji bazy oraz sposobie wykonywania kopii zapasowych.

Dobrym rozwiązaniem jest okresowe sprawdzanie, czy kopia zapasowa faktycznie powstaje i czy można ją odtworzyć. Sama informacja o zakończeniu zadania nie zawsze oznacza, że kopia jest kompletna. Warto także zaplanować aktualizacje systemu i programu poza godzinami pracy oraz przed aktualizacją wykonać kopię danych i konfiguracji.

Jeżeli w firmie działa kilka stanowisk, użytkownicy powinni wiedzieć, do którego komputera zgłaszać problem i jaką treść komunikatu przekazać. Pomocne są: zrzut ekranu błędu, godzina wystąpienia, informacja o tym, czy problem dotyczy wszystkich stanowisk, oraz opis ostatnich zmian, takich jak restart serwera, aktualizacja, wymiana routera lub zmiana hasła.

Błąd połączenia z bazą danych nie zawsze oznacza poważną awarię, ale wymaga metodycznego podejścia. Sprawdzenie zakresu problemu, stanu usługi, komunikacji sieciowej, zapory, konfiguracji programu i kopii zapasowej pozwala uniknąć przypadkowych zmian. Dzięki temu można szybciej ustalić, czy wystarczy korekta ustawień, czy potrzebna jest bezpieczna naprawa serwera i bazy danych.

Zgłoszenie naprawy: 22 390 56 49 — telefon czynny całą dobę, siedem dni w tygodniu. Sprzęt odbieramy spod wskazanego adresu w Grodzisku Mazowieckim i okolicy.

Zobacz też

Grodzisk Mazowiecki
Image

Arrived compass prepare an on as. Reasonable particular on my it in sympathize. Size now easy eat hand how. Unwilling he departure elsewhere dejection at. Heart large seems may purse means few blind.