Dela via


Felmeddelandet "System Message 5003 – Det går inte att öppna den angivna serverdatabasen" när du försöker logga in på Microsoft Dynamics SL

Den här artikeln innehåller lösningar på ett fel som uppstår när du försöker logga in på Microsoft Business Solutions – Solomon eller Microsoft Dynamics SL.

Gäller för: Microsoft Dynamics SL
Ursprungligt KB-nummer: 875704

Symptom

När du försöker logga in på Microsoft Business Solutions – Solomon eller Microsoft Dynamics SL får du följande felmeddelande:

Systemmeddelande 5003 – Det går inte att öppna den angivna serverdatabasen

Orsak

Det här problemet uppstår av en eller flera av följande orsaker.

Orsak 1

Värdet för servernamn i domäntabellen i Microsoft Dynamics SL-systemdatabasen matchar inte namnet på den instans av SQL Server som innehåller Microsoft Dynamics SL-databaserna. Se Lösning 1.

Orsak 2

Ett alias i klientnätverksverktyget pekar på en gammal server. Kontrollera att aliaset i klientnätverksverktyget är korrekt. Se Lösning 2.

Orsak 3

Protokollet Namngivna pipes och TCP/IP-protokollet är inte aktiverade i klientnätverksverktyget. Se Lösning 3.

Orsak 4

När du försöker logga in på en ny Microsoft Dynamics SL-programdatabas och namnet på databasen börjar med ett tal visas felet. Eftersom det finns en begränsning i SQL Server måste databasnamnen börja med ett alfabetisk tecken. Se Lösning 4.

Orsak 5

Du kan inte upprätta en anslutning med namngivna pipes till servern eftersom du inte har tillräcklig Windows-behörighet. Se Lösning 5.

Orsak 6

TCP/IP har konfigurerats felaktigt. Se Lösning 6.

Orsak 7

Databasen är inställd på Single-User läge. Se Lösning 7.

Orsak 8

Den Capicom.dll filen på datorn där felet tas emot är antingen skadad eller så är versionen felaktig. Se Lösning 8.

Orsak 9

Windows-brandväggen på SQL Server blockerar åtkomsten till SQL Server-/SL-databaserna. Se Lösning 9.

Orsak 10

Du använder windowsautentiseringssäkerhetsmodellen i Microsoft Dynamics SL. Du har dock inte länkat användar-ID:t i Microsoft Dynamics SL till användar-ID:t i Windows. Dessutom skapade du samma användar-ID manuellt i Microsoft Dynamics SL-systemdatabasen i SQL Server. Se Lösning 10.

Orsak 11

Microsoft Dynamics SL-användarkontot är medlem i gruppen ADMINISTRATÖRER i Microsoft Dynamics SL. Det relaterade Windows-domänanvändarkontot är dock inte medlem i sysadmin-rollen i SQL Server. Se Lösning 11 och Lösning 12.

Orsak 12

Windows-brandväggen i Windows Server 2008 R2 blockerar åtkomsten till SQL Server/SL-databaserna. Se Lösning 13.

Orsak 13

Inträffar på skärmen Sök databas (98.000.01) när du väljer en programdatabas i rutan Databasnamn. Se Lösning 14.

Orsak 14

Inträffar på skärmen Sök databas (98.000.01) när du väljer OK när du har valt Servernamn och Databasnamn. Se Lösning 15.

Åtgärd

Lös problemet genom att använda lämplig lösning.

Lösning 1

Kontrollera värdet för servernamn i domäntabellen för att kontrollera att värdet matchar namnet på instansen av SQL Server där Microsoft Dynamics SL-installationen finns.

  1. I SQL Server Management Studio kör du följande instruktion i Microsoft Dynamics SL-systemdatabasen.

    Select servername, * from domain
    
  2. Om värdet för servernamn inte matchar instansnamnet för SQL Server kör du följande instruktion för att uppdatera värdet för servernamn:

    UPDATE Domain SET ServerName = '<Nameofserver>'
    --Replace the <Nameofserver> placeholder with the instance name of SQL Server.
    
  3. Logga in på Databasunderhåll.

  4. På fliken Uppdatera databaser väljer du Systemdatabasen för Microsoft Dynamics SL och alla associerade programdatabaser och väljer sedan Uppdatera vyer.

Lösning 2

Ta bort aliaset som refererar till den gamla servern. Följ dessa steg för att göra detta:

  1. Välj Start, välj Kör, skriv cliconfg och tryck sedan på RETUR.
  2. På fliken Alias kontrollerar du att alla angivna alias är korrekta och gäller för aktuella servrar. Om något av aliasen refererar till gamla servrar använder du pekaren för att fokusera på den som du vill ta bort och väljer sedan Ta bort.
  3. Välj OK.

På en 32-bitars dator:
Gå till start>cliconfgför körningstyp>

På en 64-bitars dator:

  1. Bläddra till C:\Windows\SysWOW64
  2. Kör cliconfg.exe som finns i mappen

Lösning 3

Kontrollera att namngivna pipes och TCP/IP är aktiverade i klientnätverksverktyget.

  1. Välj Start, välj Kör, skriv cliconfg och tryck sedan på RETUR.

  2. På fliken Allmänt kontrollerar du att protokollet Named Pipes och TCP/IP-protokollet visas i Aktiverade protokoll efter ordning. Om dessa protokoll inte är aktiverade använder du pekaren för att fokusera på var och en och väljer sedan Aktivera.

  3. Om protokollet Namngivna pipes inte är det första protokollet i listan väljer du protokollet Namngivna pipes och använder piltangenterna för att flytta det.

  4. Välj OK.

    Obs!

    Vanligtvis finns det ingen angivna rekommendation om vilket protokoll som ska läsas in först. Beroende på nätverkskonfigurationer kan ett protokoll fungera bättre än det andra.

På en 32-bitars dator:

  1. Gå till start>cliconfgför körningstyp>
  2. Kontrollera att både namngivna pipes och TCP/IP är aktiverade.

På en 64-bitars dator:

  1. Bläddra till C:\Windows\SysWOW64.
  2. Kör cliconfg.exe som finns i mappen
  3. Kontrollera att både namngivna pipes och TCP/IP är aktiverade.

Lösning 4

Skapa en säkerhetskopia av befintliga Microsoft Dynamics SL-program- och systemdatabaser och återställ sedan databaserna till samma server med hjälp av alfadatabasnamn.

Obs!

I steg 4 kontrollerar du att du återställer databasen till samma SQL Server.

Lösning 5

Bevilja användaren tillräcklig behörighet i Windows.

Obs!

SQL Server kan inte läsa registerinställningarna för att upprätta en anslutning med namngiven pipe eftersom användaren inte har tillräcklig behörighet i Windows. Kontakta nätverkssystemadministratören om du vill ha hjälp.

Lösning 6

Kontrollera att TCP/IP är korrekt konfigurerat.

  1. Om du använder DHCP för att tilldela IP-adresser kontrollerar du att datorn som genererar felet låter DHCP-servern tilldela adressen i stället för att tilldela en statisk IP-adress.

  2. Kontrollera att arbetsstationen kan pinga servern. Följ dessa steg för att göra detta:

    1. Välj Start, välj Kör, skriv cmd och tryck sedan på RETUR.

    2. I DOS-prompten skriver du ping ServerName<> eller skriver ping <ServerIPAddress>.

      Obs!

      <Ersätt platshållaren ServerName> med namnet på servern. <Ersätt platshållaren ServerIPAddress> med serverns IP-adress.

  3. Om du använder statisk DNS-matchning lägger du till den server som kör SQL Server i listan DNS-serversökordning som finns i Nätverket – TCP/IP-egenskaper – DNS-konfiguration eller i värdfilen på arbetsstationsdatorn. Kontakta nätverkssystemadministratören om du vill ha hjälp.

Lösning 7

Rensa åtkomst för enskild användare i databasegenskaper.

  1. Öppna SQL Server Management Studio.
  2. Expandera Databaser.
  3. Högerklicka på Microsoft Dynamics SL-programdatabasen och välj Egenskaper.
  4. På sidan Alternativ kontrollerar du att Enskild användare inte har valts som värdet Begränsa åtkomst .

Lösning 8

Kontrollera versionen av Capicom.dll-filen och registrera filen manuellt.

  1. Leta upp den Capicom.dll filen i följande sökvägar:

    32-bitars operativsystem: <SystemDrive>:\Windows\System32

    64-bitars operativsystem: <SystemDrive>:\Windows\SysWOW64

    Obs!

    <SystemDrive> representerar den enhet där Microsoft Windows är installerat.

  2. Kontrollera att versionen av Capicom.dll-filen är 2.1.0.1. Följ dessa steg för att göra detta:

    1. Högerklicka på filen Capicom.dll och välj sedan Egenskaper. Dialogrutan egenskaper förcapicom.dll visas.
    2. På fliken Version kontrollerar du att värdet för filversion är 2.1.0.1.
    3. Välj OK.
  3. Högerklicka på filen Capicom.dll och välj sedan Öppna med.

  4. I dialogrutan Windows väljer du Välj programmet i en lista och väljer sedan OK.

  5. I dialogrutan Öppna med väljer du Bläddra.

  6. Leta upp och öppna sedan följande mapp:

    32-bitars operativsystem: <SystemDrive>:\Windows\System32 64-bitars operativsystem: <SystemDrive>:\Windows\SysWOW64

  7. Dubbelklicka på filen Regsvr32.exe och välj sedan OK.

  8. Välj OK när du får följande meddelande:

    RegSvr32 – DllRegisterServer i SystemDrive :\windows\system32\capicom.dll lyckades.

Lösning 9

Öppna port 1433 på SQL Server. Följ dessa steg för att göra detta:

  1. I Kontrollpanelen väljer du Windows-brandväggen.
  2. På fliken Undantag väljer du Lägg till port.
  3. Ange följande inställningar:
    • Namn: 1433
    • Portnummer: 1433
    • Välj TCP.
  4. Klicka två gånger på OK.

Lösning 10

Ta bort användar-ID:t som du skapade i SQL och länka sedan användar-ID:t för Microsoft Dynamics SL till Windows-användar-ID:t. Följ dessa steg för att göra detta:

  1. Ta bort användar-ID:t som du skapade i SQL:

    1. I SQL Server Management Studio expanderar du Databaser, expanderar Microsoft Dynamics SL-systemdatabasen, expanderar Säkerhet och expanderar sedan Användare.
    2. Högerklicka på användar-ID:t som du skapade och välj sedan Ta bort.
    3. I dialogrutan Ta bort objekt väljer du OK.
  2. Länka Microsoft Dynamics SL-användar-ID:t till Windows-användar-ID:t:

    1. Logga in på Microsoft Dynamics SL med hjälp av SYSADMIN-användar-ID: t.

    2. I navigeringsfönstret väljer du Administration.

    3. I fönstret Administrationsinformation går du till Säkerhet och väljer Användarunderhåll.

    4. I rutan Användar-ID anger du det användar-ID som inte kan logga in på Microsoft Dynamics SL.

    5. På fliken Information går du till rutan Windows-användarnamn och skriver <DomainName>\<UserName>.

      Obs!

      <Ersätt platshållaren DomainName> med Windows-domännamnet och ersätt <platshållaren Användarnamn> med Windows-användar-ID.

    6. Välj Spara och stäng sedan skärmen Användarunderhåll (95.260.00).

Lösning 11

Synkronisera ägarskapet och säkerheten i Microsoft Dynamics SL-databaserna. Följ dessa steg för att göra detta:

  1. Öppna skärmen Databasunderhåll (98.290.00).
  2. I rutan Mål SQL Server Namn skriver du namnet på servern.
  3. I rutan Inloggnings-ID skriver du sa.
  4. I rutan Lösenord skriver du lösenordet för SYSADMIN-användaren.
  5. Välj Anslut.
  6. På fliken Uppdatera databas går du till rutan Systemdatabasnamn och väljer systemdatabasen.
  7. I kolumnen Databaser väljer du din programdatabas.
  8. I området Uppdateringsscenarier väljer du Synkronisera allt ägarskap & Säkerhet.
  9. Välj Uppdatera databas.
  10. Stäng skärmen Databasunderhåll (98.290.00).

Lösning 12

Ta bort och läste alla användare till gruppen ADMINISTRATÖRER i Microsoft Dynamics SL. Följ dessa steg för att göra detta:

Obs!

Den här lösningen förutsätter att ett eller flera Microsoft Dynamics SL-användarkonton som har administratörsbehörighet kan logga in på Microsoft Dynamics SL.

  1. Logga in på domänen med ett Windows-domänanvändarkonto som är länkat till ett Microsoft Dynamics SL-användarkonto som har administratörsbehörighet.
  2. Välj Administration.
  3. I fönstret System Manager väljer du Gruppunderhåll under Säkerhet.
  4. I rutan Grupp-ID skriver du ADMINISTRATÖRER och trycker sedan på TABB.
  5. Obs!

    Användar-ID:t som anges i området Information .

  6. Ta bort alla användare från listan förutom det användar-ID som du för närvarande är inloggad som.
  7. Välj Spara.
  8. Lägg till användar-ID:t och välj sedan Spara.
  9. Stäng skärmen Gruppunderhåll (95.280.00).

Lösning 13

Öppna portnumren 1433 och 1434. Följ dessa steg för att göra detta:

  1. På den dator som kör SQL Server väljer du Start, pekar på Administrationsverktyg och väljer sedan Windows-brandväggen med avancerad säkerhet.
  2. Högerklicka på Regler för inkommande trafik, välj Ny regel och välj sedan Nästa.
  3. Välj Alla program och välj sedan Nästa.
  4. Markera Nästa, klicka för att avmarkera kryssrutan Offentlig och välj sedan Nästa.
  5. Skriv SQL SERVER i rutan Namn och välj sedan Slutför.
  6. I fönstret Regler för inkommande trafik högerklickar du på SQL SERVER och väljer sedan Egenskaper.
  7. På fliken Protokoll och portar väljer du TCP i rutan Protokolltyp .
  8. I rutan Lokal port väljer du Specifika portar och skriver sedan 1433.
  9. Välj Använd och välj sedan OK.
  10. Högerklicka på Regler för inkommande trafik, välj Ny regel och välj sedan Nästa
  11. Välj Alla program och välj sedan Nästa.
  12. Markera Nästa, klicka för att avmarkera kryssrutan Offentlig och välj sedan Nästa.
  13. Skriv SQL SERVER BROWSER i rutan Namn och välj sedan Slutför.
  14. I fönstret Regler för inkommande trafik högerklickar du på SQL SERVER BROWSER och väljer sedan Egenskaper.
  15. På fliken Protokoll och portar väljer du UDP i rutan Protokolltyp .
  16. I rutan Lokal port väljer du Specifika portar och skriver sedan 1434.
  17. Välj Använd och välj sedan OK för att stänga dialogrutan EGENSKAPER FÖR SQL SERVER BROWSER .

Lösning 14

Välj rätt systemdatabasnamn i rutan Databasnamn och välj sedan OK.

Lösning 15

Lägg till ett alias tillbaka till SQL-servern i SQL Server-klientnätverksverktyget:

På en 32-bitars dator:

  1. Gå till start>cliconfgför körningstyp>
  2. Kontrollera att både namngivna pipes och TCP/IP är aktiverade.
  3. På fliken Alias väljer du Lägg till.
  4. För Serveralias anger du ditt servernamn precis som du skriver det på skärmen Sök databaser .
  5. Lämna allt annat som standard. (Bör som standard vara ett namngivet pipes-alias)
  6. Välj OK.
  7. Välj Använd.
  8. Välj OK.

På en 64-bitars dator:

  1. Gå till C:\Windows\SysWOW64
  2. Kör cliconfg.exe som finns i mappen
  3. Kontrollera att både namngivna pipes och TCP/IP är aktiverade.
  4. På fliken Alias väljer du Lägg till.
  5. För Serveralias anger du ditt servernamn precis som du skriver det på skärmen Sök databaser .
  6. Lämna allt annat som standard. (Bör som standard vara ett namngivet pipes-alias)
  7. Välj OK.
  8. Välj Använd.
  9. Välj OK.

Mer information

Om du vill utesluta nätverksproblem skapar du en ODBC-testanslutning på datorn där du får felmeddelandet. Följ dessa steg för att göra detta:

  1. I Kontrollpanelen väljer du Administrationsverktyg och sedan Datakällor (ODBC).
  2. På fliken Användar-DSN väljer du Lägg till, bläddrar till slutet av listan, väljer SQL Server och väljer sedan Slutför.
  3. Ange följande inställningar:
    • Namn: TEST
    • Beskrivning: TEST
    • Server: Ange den SQL Server som du vill ansluta till.
  4. Välj Nästa.
  5. Välj Windows-autentisering eller SQL-autentisering och ange sa-användarnamnet och lösenordet om du behöver.
  6. Välj Nästa två gånger, välj Slutför och välj sedan Testa datakälla.