Błąd "Komunikat systemowy 5003 — nie można otworzyć określonej bazy danych serwera" podczas próby zalogowania się do usługi Microsoft Dynamics SL

Ten artykuł zawiera rozwiązania błędu występującego podczas próby zalogowania się do usługi Microsoft Business Solutions — Solomon lub Microsoft Dynamics SL.

Dotyczy: Microsoft Dynamics SL
Oryginalny numer KB: 875704

Symptomy

Podczas próby zalogowania się do usługi Microsoft Business Solutions — Solomon lub Microsoft Dynamics SL zostanie wyświetlony następujący komunikat o błędzie:

Komunikat systemowy 5003 — nie można otworzyć określonej bazy danych serwera

Przyczyna

Ten problem występuje z co najmniej jednej z następujących przyczyn.

Przyczyna 1

Wartość nazwy serwera w tabeli domeny w systemowej bazie danych Microsoft Dynamics SL nie jest zgodna z nazwą wystąpienia SQL Server zawierającego bazy danych Microsoft Dynamics SL. Zobacz Rozwiązanie 1.

Przyczyna 2

Alias w narzędziu sieci klienta wskazuje stary serwer. Upewnij się, że alias w narzędziu sieciowym klienta jest poprawny. Zobacz Rozwiązanie 2.

Przyczyna 3

Protokół Nazwane potoki i protokół TCP/IP nie są włączone w narzędziu sieciowym klienta. Zobacz Rozwiązanie 3.

Przyczyna 4

Podczas próby zalogowania się do nowej bazy danych aplikacji Microsoft Dynamics SL, a nazwa bazy danych zaczyna się od liczby, zostanie wyświetlony błąd. Ponieważ istnieje ograniczenie SQL Server, nazwy baz danych muszą zaczynać się od znaku alfabetycznego. Zobacz Rozwiązanie 4.

Przyczyna 5

Nie można ustanowić połączenia nazwanych potoków z serwerem, ponieważ nie masz wystarczających uprawnień systemu Windows. Zobacz Rozwiązanie 5.

Przyczyna 6

Protokół TCP/IP jest niepoprawnie skonfigurowany. Zobacz Rozwiązanie 6.

Przyczyna 7

Baza danych jest ustawiona na tryb Single-User. Zobacz Rozwiązanie 7.

Przyczyna 8

Plik Capicom.dll na komputerze, na którym jest odbierany błąd, jest uszkodzony lub wersja jest niepoprawna. Zobacz Rozwiązanie 8.

Przyczyna 9

Zapora systemu Windows na SQL Server blokuje dostęp do baz danych SQL Server/SL. Zobacz Rozwiązanie 9.

Przyczyna 10

Używasz modelu zabezpieczeń uwierzytelniania systemu Windows w usłudze Microsoft Dynamics SL. Nie połączono jednak identyfikatora użytkownika w usłudze Microsoft Dynamics SL z identyfikatorem użytkownika w systemie Windows. Ponadto ręcznie utworzono ten sam identyfikator użytkownika w bazie danych systemu Microsoft Dynamics SL w SQL Server. Zobacz Rozwiązanie 10.

Przyczyna 11

Konto użytkownika usługi Microsoft Dynamics SL jest członkiem grupy ADMINISTRATORZY w usłudze Microsoft Dynamics SL. Jednak powiązane konto użytkownika domeny systemu Windows nie jest członkiem roli administratora systemu windows w SQL Server. Zobacz Rozwiązanie 11 i Rozwiązanie 12.

Przyczyna 12

Zapora systemu Windows w systemie Windows Server 2008 R2 blokuje dostęp do baz danych SQL Server/SL. Zobacz Rozwiązanie 13.

Przyczyna 13

Występuje na ekranie Znajdź bazę danych (98.000.01) po wybraniu bazy danych aplikacji w polu Nazwa bazy danych. Zobacz Rozwiązanie 14.

Przyczyna 14

Występuje na ekranie Znajdź bazę danych (98.000.01) po wybraniu przycisku OK po wybraniu nazwy serwera i nazwy bazy danych. Zobacz Rozwiązanie 15.

Rozwiązanie

Aby rozwiązać ten problem, użyj odpowiedniego rozwiązania.

Uchwała 1

Sprawdź wartość nazwy serwera w tabeli domeny, aby upewnić się, że wartość jest zgodna z nazwą wystąpienia SQL Server, w którym znajduje się instalacja microsoft Dynamics SL.

  1. W SQL Server Management Studio uruchom następującą instrukcję w bazie danych systemu Microsoft Dynamics SL.

    Select servername, * from domain
    
  2. Jeśli wartość nazwy serwera nie jest zgodna z nazwą wystąpienia SQL Server, uruchom następującą instrukcję, aby zaktualizować wartość nazwy serwera:

    UPDATE Domain SET ServerName = '<Nameofserver>'
    --Replace the <Nameofserver> placeholder with the instance name of SQL Server.
    
  3. Zaloguj się do konserwacji bazy danych.

  4. Na karcie Aktualizowanie baz danych wybierz bazę danych systemu Microsoft Dynamics SL i wszystkie skojarzone bazy danych aplikacji, a następnie wybierz pozycję Widoki aktualizacji.

Uchwała 2

Usuń alias, który odwołuje się do starego serwera. Aby tego dokonać, wykonaj następujące kroki:

  1. Wybierz pozycję Start, wybierz pozycję Uruchom, wpisz cliconfg, a następnie naciśnij klawisz ENTER.
  2. Na karcie Alias sprawdź, czy wszystkie wymienione aliasy są poprawne i są przeznaczone dla bieżących serwerów. Jeśli którykolwiek z aliasów odwołuje się do starych serwerów, użyj wskaźnika, aby umieścić fokus na tym, który chcesz usunąć, a następnie wybierz pozycję Usuń.
  3. Wybierz przycisk OK.

Na komputerze 32-bitowym:
Przejdź do polecenia Uruchom>> typ cliconfg

Na komputerze 64-bitowym:

  1. Przejdź do C:\Windows\SysWOW64
  2. Uruchom cliconfg.exe znajdujący się w tym folderze

Uchwała 3

Sprawdź, czy w narzędziu sieciowym klienta są włączone nazwane potoki i protokół TCP/IP.

  1. Wybierz pozycję Start, wybierz pozycję Uruchom, wpisz cliconfg, a następnie naciśnij klawisz ENTER.

  2. Na karcie Ogólne sprawdź, czy protokół Nazwane potoki i protokół TCP/IP są wyświetlane w sekcji Włączone protokoły według kolejności. Jeśli te protokoły nie są włączone, użyj wskaźnika, aby skoncentrować się na każdym z nich, a następnie wybierz pozycję Włącz.

  3. Jeśli protokół Nazwane potoki nie jest pierwszym protokołem na liście, wybierz protokół Nazwane potoki i użyj klawiszy strzałek, aby go przenieść.

  4. Wybierz przycisk OK.

    Uwaga

    Zazwyczaj nie ma ustawionej rekomendacji dotyczącej tego, który protokół powinien zostać załadowany jako pierwszy. W zależności od konfiguracji sieci jeden protokół może działać lepiej niż drugi.

Na komputerze 32-bitowym:

  1. Przejdź do polecenia Uruchom>> typ cliconfg
  2. Upewnij się, że są włączone zarówno nazwane potoki, jak i TCP/IP.

Na komputerze 64-bitowym:

  1. Przejdź do .C:\Windows\SysWOW64
  2. Uruchom cliconfg.exe znajdujący się w tym folderze
  3. Upewnij się, że są włączone zarówno nazwane potoki, jak i TCP/IP.

Uchwała 4

Utwórz kopię zapasową istniejącej aplikacji microsoft Dynamics SL i systemowych baz danych, a następnie przywróć bazy danych na ten sam serwer przy użyciu nazw baz danych alfa.

Uwaga

W kroku 4 upewnij się, że baza danych została przywrócona do tego samego SQL Server.

Uchwała 5

Przyznaj użytkownikowi wystarczające uprawnienia w systemie Windows.

Uwaga

SQL Server nie może odczytać ustawień rejestru w celu ustanowienia połączenia nazwanego potoku, ponieważ użytkownik nie ma wystarczających uprawnień w systemie Windows. Skontaktuj się z administratorem systemu sieciowego, aby uzyskać pomoc.

Rozdzielczość 6

Sprawdź, czy protokół TCP/IP jest poprawnie skonfigurowany.

  1. Jeśli używasz protokołu DHCP do przypisywania adresów IP, upewnij się, że komputer, który generuje błąd, zezwala serwerowi DHCP na przypisanie adresu zamiast przypisywania statycznego adresu IP.

  2. Sprawdź, czy stacja robocza może wysłać polecenie ping do serwera. Aby tego dokonać, wykonaj następujące kroki:

    1. Wybierz pozycję Start, wybierz pozycję Uruchom, wpisz cmd, a następnie naciśnij klawisz ENTER.

    2. W wierszu polecenia DOS wpisz ping <ServerName> lub wpisz ping <ServerIPAddress>.

      Uwaga

      Zastąp symbol zastępczy <ServerName> nazwą serwera. Zastąp symbol zastępczy <ServerIPAddress> adresem IP serwera.

  3. Jeśli używasz statycznego rozpoznawania nazw DNS, dodaj serwer z systemem SQL Server do listy kolejności wyszukiwania serwera DNS, która znajduje się w obszarze Sieć — Właściwości protokołu TCP/IP — konfiguracja DNS lub do pliku hosta na komputerze stacji roboczej. Skontaktuj się z administratorem systemu sieciowego, aby uzyskać pomoc.

Uchwała 7

Wyczyść dostęp pojedynczego użytkownika we właściwościach bazy danych.

  1. Otwórz SQL Server Management Studio.
  2. Rozwiń węzeł Bazy danych.
  3. Kliknij prawym przyciskiem myszy bazę danych aplikacji Microsoft Dynamics SL i wybierz pozycję Właściwości.
  4. Na stronie Opcje i sprawdź, czy wartość Ograniczanie dostępu nie jest wybrana jako pojedynczy użytkownik.

Uchwała 8

Sprawdź wersję pliku Capicom.dll i ręcznie zarejestruj plik.

  1. Znajdź plik Capicom.dll w następujących ścieżkach:

    32-bitowy system operacyjny: <SystemDrive>:\Windows\System32

    64-bitowy system operacyjny: <SystemDrive>:\Windows\SysWOW64

    Uwaga

    <Usługa SystemDrive> reprezentuje dysk, na którym jest zainstalowany system Microsoft Windows.

  2. Sprawdź, czy wersja pliku Capicom.dll to 2.1.0.1. Aby tego dokonać, wykonaj następujące kroki:

    1. Kliknij prawym przyciskiem myszy plik Capicom.dll, a następnie wybierz pozycję Właściwości. Zostanie wyświetlone okno dialogowe Właściwościcapicom.dll.
    2. Na karcie Wersja sprawdź, czy wartość wersji pliku to 2.1.0.1.
    3. Wybierz przycisk OK.
  3. Kliknij prawym przyciskiem myszy plik Capicom.dll, a następnie wybierz pozycję Otwórz za pomocą.

  4. W oknie dialogowym Windows wybierz pozycję Wybierz program z listy, a następnie wybierz przycisk OK.

  5. W oknie dialogowym Otwieranie przy użyciu wybierz pozycję Przeglądaj.

  6. Znajdź, a następnie otwórz następujący folder:

    32-bitowy system operacyjny: <SystemDrive>:\Windows\System32 64-bitowy system operacyjny: <SystemDrive>:\Windows\SysWOW64

  7. Kliknij dwukrotnie plik Regsvr32.exe, a następnie wybierz przycisk OK.

  8. Po otrzymaniu następującego komunikatu wybierz przycisk OK :

    RegSvr32 — DllRegisterServer w usłudze SystemDrive :\windows\system32\capicom.dll powiodło się.

Uchwała 9

Otwórz port 1433 na SQL Server. Aby tego dokonać, wykonaj następujące kroki:

  1. W Panel sterowania wybierz pozycję Zapora systemu Windows.
  2. Na karcie Wyjątki wybierz pozycję Dodaj port.
  3. Określ następujące ustawienia:
    • Nazwa: 1433
    • Numer portu: 1433
    • Wybierz pozycję TCP.
  4. Kliknij dwa razy przycisk OK.

Rozdzielczość 10

Usuń identyfikator użytkownika utworzony w języku SQL, a następnie połącz identyfikator użytkownika microsoft Dynamics SL z identyfikatorem użytkownika systemu Windows. Aby tego dokonać, wykonaj następujące kroki:

  1. Usuń identyfikator użytkownika utworzony w języku SQL:

    1. W SQL Server Management Studio rozwiń węzeł Bazy danych, rozwiń bazę danych systemu Microsoft Dynamics SL, rozwiń węzeł Zabezpieczenia, a następnie rozwiń węzeł Użytkownicy.
    2. Kliknij prawym przyciskiem myszy utworzony identyfikator użytkownika, a następnie wybierz pozycję Usuń.
    3. W oknie dialogowym Usuwanie obiektu wybierz przycisk OK.
  2. Połącz identyfikator użytkownika aplikacji Microsoft Dynamics SL z identyfikatorem użytkownika systemu Windows:

    1. Zaloguj się do usługi Microsoft Dynamics SL przy użyciu identyfikatora użytkownika SYSADMIN.

    2. W okienku nawigacji wybierz pozycję Administracja.

    3. W okienku Szczegóły administracji w obszarze Zabezpieczenia wybierz pozycję Konserwacja użytkownika.

    4. W polu Identyfikator użytkownika wpisz identyfikator użytkownika, który nie może zalogować się do usługi Microsoft Dynamics SL.

    5. Na karcie Szczegóły w polu Nazwa użytkownika systemu Windows wpisz <DomenaNazwa>\<użytkownika>.

      Uwaga

      Zastąp symbol zastępczy <DomainName> nazwą domeny systemu Windows i zastąp <symbol zastępczy UserName> identyfikatorem użytkownika systemu Windows.

    6. Wybierz pozycję Zapisz, a następnie zamknij ekran Konserwacja użytkownika (95.260.00).

Uchwała 11

Synchronizuj własność i zabezpieczenia w bazach danych microsoft Dynamics SL. Aby tego dokonać, wykonaj następujące kroki:

  1. Otwórz ekran Konserwacja bazy danych (98.290.00 ).
  2. W polu Nazwa SQL Server docelowej wpisz nazwę serwera.
  3. W polu Identyfikator logowania wpisz sa.
  4. W polu Hasło wpisz hasło użytkownika SYSADMIN.
  5. Wybierz pozycję Połącz.
  6. Na karcie Aktualizowanie bazy danych w polu Nazwa systemowej bazy danych wybierz systemowej bazy danych.
  7. W kolumnie Bazy danych wybierz bazę danych aplikacji.
  8. W obszarze Scenariusze aktualizacji wybierz pozycję Synchronizuj całą własność & Security.
  9. Wybierz pozycję Aktualizuj bazę danych.
  10. Zamknij ekran Konserwacja bazy danych (98.290.00 ).

Uchwała 12

Usuń i odczytaj wszystkich użytkowników do grupy ADMINISTRATORZY w usłudze Microsoft Dynamics SL. Aby tego dokonać, wykonaj następujące kroki:

Uwaga

W tej rezolucji przyjęto założenie, że co najmniej jedno konto użytkownika usługi Microsoft Dynamics SL z uprawnieniami administracyjnymi może zalogować się do usługi Microsoft Dynamics SL.

  1. Zaloguj się do domeny przy użyciu konta użytkownika domeny systemu Windows połączonego z kontem użytkownika usługi Microsoft Dynamics SL z uprawnieniami administracyjnymi.
  2. Wybierz pozycję Administracja.
  3. W okienku Menedżer systemu wybierz pozycję Konserwacja grupy w obszarze Zabezpieczenia.
  4. W polu Identyfikator grupy wpisz ADMINISTRATORÓW, a następnie naciśnij klawisz TAB.
  5. Uwaga

    Identyfikatory użytkowników wymienione w obszarze Szczegóły .

  6. Usuń wszystkich użytkowników z listy z wyjątkiem identyfikatora użytkownika, który jest obecnie zalogowany jako.
  7. Wybierz Zapisz.
  8. Dodaj identyfikatory użytkownika, a następnie wybierz pozycję Zapisz.
  9. Zamknij ekran Konserwacja grupy (95.280.00 ).

Uchwała 13

Otwórz numery portów 1433 i 1434. Aby tego dokonać, wykonaj następujące kroki:

  1. Na komputerze z systemem SQL Server wybierz pozycję Start, wskaż pozycję Narzędzia administracyjne, a następnie wybierz pozycję Zapora systemu Windows z zabezpieczeniami zaawansowanymi.
  2. Kliknij prawym przyciskiem myszy pozycję Reguły ruchu przychodzącego, wybierz pozycję Nowa reguła, a następnie wybierz pozycję Dalej.
  3. Wybierz pozycję Wszystkie programy, a następnie wybierz pozycję Dalej.
  4. Wybierz pozycję Dalej, kliknij, aby wyczyścić pole wyboru Publiczne , a następnie wybierz pozycję Dalej.
  5. Wpisz SQL SERVER w polu Nazwa , a następnie wybierz pozycję Zakończ.
  6. W okienku Reguły ruchu przychodzącego kliknij prawym przyciskiem myszy pozycję SQL SERVER, a następnie wybierz pozycję Właściwości.
  7. Na karcie Protokoły i porty wybierz pozycję TCP w polu Typ protokołu .
  8. W polu Port lokalny wybierz pozycję Określone porty, a następnie wpisz 1433.
  9. Wybierz pozycję Zastosuj, a następnie wybierz przycisk OK.
  10. Kliknij prawym przyciskiem myszy pozycję Reguły ruchu przychodzącego, wybierz pozycję Nowa reguła, a następnie wybierz pozycję Dalej
  11. Wybierz pozycję Wszystkie programy, a następnie wybierz pozycję Dalej.
  12. Wybierz pozycję Dalej, kliknij, aby wyczyścić pole wyboru Publiczne , a następnie wybierz pozycję Dalej.
  13. Wpisz SQL SERVER BROWSER w polu Nazwa , a następnie wybierz pozycję Zakończ.
  14. W okienku Reguły ruchu przychodzącego kliknij prawym przyciskiem myszy pozycję SQL SERVER BROWSER, a następnie wybierz pozycję Właściwości.
  15. Na karcie Protokoły i porty wybierz pozycję UDP w polu Typ protokołu .
  16. W polu Port lokalny wybierz pozycję Określone porty, a następnie wpisz 1434.
  17. Wybierz pozycję Zastosuj, a następnie wybierz przycisk OK , aby zamknąć okno dialogowe Właściwości PRZEGLĄDARKI PROGRAMU SQL SERVER .

Uchwała 14

Wybierz odpowiednią nazwę systemowej bazy danych w polu Nazwa bazy danych , a następnie wybierz przycisk OK.

Uchwała 15

Dodaj alias z powrotem do serwera SQL w narzędziu sieciowym klienta SQL Server:

Na maszynie 32-bitowej:

  1. Przejdź do polecenia Uruchom>> typ cliconfg
  2. Upewnij się, że są włączone zarówno nazwane potoki, jak i TCP/IP.
  3. Na karcie Alias wybierz pozycję Dodaj.
  4. W polu Alias serwera wpisz nazwę serwera dokładnie tak, jak wpisujesz ją na ekranie Znajdowanie baz danych .
  5. Pozostaw wszystko inne domyślne. (Powinna być domyślnie aliasem nazwanych potoków)
  6. Wybierz przycisk OK.
  7. Wybierz pozycję Zastosuj.
  8. Wybierz przycisk OK.

Na maszynie 64-bitowej:

  1. Przejdź do C:\Windows\SysWOW64
  2. Uruchom cliconfg.exe znajdujący się w tym folderze
  3. Upewnij się, że są włączone zarówno nazwane potoki, jak i TCP/IP.
  4. Na karcie Alias wybierz pozycję Dodaj.
  5. W polu Alias serwera wpisz nazwę serwera dokładnie tak, jak wpisujesz ją na ekranie Znajdowanie baz danych .
  6. Pozostaw wszystko inne domyślne. (Powinna być domyślnie aliasem nazwanych potoków)
  7. Wybierz przycisk OK.
  8. Wybierz pozycję Zastosuj.
  9. Wybierz przycisk OK.

Więcej informacji

Aby wykluczyć problemy z siecią, utwórz testowe połączenie ODBC na komputerze, na którym zostanie wyświetlony komunikat o błędzie. Aby tego dokonać, wykonaj następujące kroki:

  1. W Panel sterowania wybierz pozycję Narzędzia administracyjne, a następnie wybierz pozycję Źródła danych (ODBC).
  2. Na karcie User DSN (Nazwa DSN użytkownika) wybierz pozycję Dodaj, przewiń do końca listy, wybierz pozycję SQL Server, a następnie wybierz pozycję Zakończ.
  3. Określ następujące ustawienia:
    • Nazwa: TEST
    • Opis: TEST
    • Serwer: wpisz SQL Server, z którym chcesz nawiązać połączenie.
  4. Wybierz pozycję Dalej.
  5. Wybierz pozycję Uwierzytelnianie systemu Windows lub uwierzytelnianie SQL, a następnie wpisz nazwę użytkownika i hasło sa, jeśli chcesz.
  6. Wybierz pozycję Dalej dwa razy, wybierz pozycję Zakończ, a następnie wybierz pozycję Testowe źródło danych.