Komunikat o błędzie podczas próby logowania do programu Microsoft Dynamics CRM: "nie można otworzyć bazy danych ' [organizacja] _MSCRM" zgłoszony przez logowania "

Dotyczy: Microsoft Dynamics CRM 2011Dynamics CRM 4.0

Objawy


Zainstaluj program Microsoft Dynamics CRM. Gdy użytkownik próbuje zalogować się do programu Microsoft Dynamics CRM, pojawi się następujący komunikat o błędzie:
Nie można otworzyć bazy danych"Organizacja_MSCRM" zgłoszony przez logowania.
Logowanie nie powiodło się. Niepowodzenie logowania użytkownika NT AUTHORITY\NETWORK SERVICE.
Jeśli ustawiono wartość DevErrors ustawiono na w pliku Web.config, pojawi się komunikat o błędzie podobny do następującego:
Błąd serwera w aplikacji '/'.

Nie można otworzyć bazy danych "MSCRM_CONFIG" zgłoszony przez logowania. Logowanie nie powiodło się.
Niepowodzenie logowania użytkownika 'domeny\Serwer_crm$".
Opis: Wystąpił nieobsługiwany wyjątek podczas wykonywania bieżącego żądania sieci web. Przejrzyj ślad stosu, aby uzyskać więcej informacji o błędzie i miejscu jego występowania w kodzie.

Szczegóły wyjątku: System.Data.SqlClient.SqlException: nie można otworzyć bazy danych "MSCRM_CONFIG" zgłoszony przez logowania. Logowanie nie powiodło się. Niepowodzenie logowania użytkownika 'domeny\Serwer_crm$".


Błąd źródła:

Podczas wykonywania bieżącego żądania sieci web został wygenerowany nieobsługiwany wyjątek. Informacje dotyczące pochodzenia i lokalizacji wyjątku można zidentyfikować przy użyciu poniższego śladu stosu wyjątku.

Ślad stosu:

[SqlException (0x80131904): nie można otworzyć bazy danych "MSCRM_CONFIG" zgłoszony przez logowania. Logowanie nie powiodło się.

Niepowodzenie logowania użytkownika 'domeny\Serwer_crm$'.]


System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +437

System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) + 82

System.Data.ProviderBase.DbConnectionClosed.OpenConnection (DbConnection outerConnection, DbConnectionFactory connectionFactory) + 105

System.Data.SqlClient.SqlConnection.Open() +111

Microsoft.Crm.CrmDbConnection.Open() + 386


Microsoft.Crm.SharedDatabase.DatabaseMetadata.LoadMetadataXmlFromDatabase (CrmDBConnectionType connectionType connectionString ciąg, Int32 & maxBlobSize) + 125

Microsoft.Crm.SharedDatabase.DatabaseMetadata.LoadCacheFromDatabase (CrmDBConnectionType connectionType, ciąg connectionString) + 65

Microsoft.Crm.ConfigurationDatabase.ConfigurationMetadata.LoadCache() + 41

Microsoft.Crm.ConfigurationDatabase.ConfigurationMetadata.get_Cache() + 114

Microsoft.Crm.ConfigurationDatabase.ConfigurationDatabaseService.InitializeMetadataCache() + 28

Microsoft.Crm.SharedDatabase.DatabaseService.Initialize(String tableName) + 53

Microsoft.Crm.SharedDatabase.DatabaseService.Retrieve (ciąg tableName, String [] kolumn, warunki [] PropertyBag) +109

Microsoft.Crm.ServerLocatorService.GetSiteSettingIdFromDatabase() +155

Microsoft.Crm.ServerLocatorService.GetSiteSettingId() +187

Microsoft.Crm.ServerLocatorService.GetSiteSetting(String settingName) + 82

Microsoft.Crm.LocatorService.GetSiteSetting(String settingName) + 35

Microsoft.Crm.CrmTrace.get_RefreshTrace() +654




Informacje o wersji: Microsoft.NET Framework w wersji: 2.0.50727.832; Program ASP.NET w wersji: 2.0.50727.832

Przyczyna


Ten problem występuje, jeśli jeden lub więcej z następujących warunków jest spełniony:

  • Zainstalowanie programu Microsoft Dynamics CRM w środowisku wielu serwerów. Następnie użytkownik instaluje program Microsoft Dynamics CRM bezpośrednio na serwerze, na którym jest uruchomiony program Microsoft SQL Server. Jednak niektóre uprawnienia programu SQL Server nie zostały ustawione.
  • Serwer programu Microsoft Dynamics CRM nie jest dodawany do grupy SQLAccessGroup w usłudze katalogowej Active Directory.

Rozwiązanie


Aby rozwiązać ten problem, użyj jednej lub kilku z następujących metod.

Metoda 1

Ustawienie konta NT AUTHORITY\NETWORK SERVICE jako użytkownika programu SQL Server, który ma dostęp do baz danych programu Microsoft Dynamics CRM. Aby to zrobić, wykonaj następujące kroki:
  1. Kliknij przycisk Start, wskaż Wszystkie programy, wskaż polecenie Microsoft SQL Server 2005, a następnie kliknij SQL Management Studio.
    Uwaga: Dla programu Dynamics CRM 2011 będzie Microsoft SQL Server 2008
  2. Aby zalogować się do programu SQL Server Management Studio, kliknij przycisk OK.
  3. W Eksploratorze obiektów rozwiń węzeł bazy danych, rozwiń bazę danych _MSCRM organizacji , a następnie rozwiń zabezpieczeń.
  4. Kliknij prawym przyciskiem myszy użytkowników, a następnie kliknij Nowego użytkownika.
  5. W oknie dialogowym Użytkownika bazy danych — nowy typ NT AUTHORITY\NETWORK SERVICE w następujących dziedzinach:
    • Pole Nazwa użytkownika
    • Pole Nazwa logowania
  6. W obszarze członkostwo w roli bazy danych kliknij, aby zaznaczyć pole wyboru db_owner , a następnie kliknij przycisk OK.

Metoda 2

Dodaj serwer aplikacji Microsoft Dynamics CRM do grupy SQLAccessGroup w usłudze Active Directory. Aby to zrobić, wykonaj następujące kroki:
  1. Kliknij przycisk Start, kliknij polecenie Uruchom, wpisz dsa.msc, a następnie kliknij przycisk OK.
  2. Kliknij jednostkę organizacyjną, w którym chcesz zainstalować program Microsoft Dynamics CRM.
  3. Kliknij dwukrotnie SQLAccessGroup.
  4. W oknie dialogowym SQLAccessGroup kliknij członków, kliknij przycisk Dodaj, kliknij przycisk Typy obiektów, kliknij, aby zaznaczyć pole wyboru komputery , a następnie kliknij przycisk OK.
  5. W polu Wprowadź nazwy obiektów do wybrania wpisz nazwę serwera programu Microsoft Dynamics CRM, a następnie kliknij przycisk Sprawdź nazwy.
  6. Sprawdź, czy nazwa serwera programu Microsoft Dynamics CRM w polu Wprowadź nazwy obiektów do wybrania jest dostępna, a następnie dwa razy kliknij przycisk OK .
  7. Uruchom ponownie serwer programu Microsoft Dynamics CRM.