Microsoft Dynamics CRM 로그인할 때 로그인 오류로 인해 요청된 데이터베이스를 열 수 없습니다.

이 문서에서는 Microsoft Dynamics CRM 로그인할 때 로그인 오류로 인해 요청된 데이터베이스 "Organization_MSCRM"을 열 수 없음을 받을 수 있는 문제에 대한 해결 방법을 제공합니다.

적용 대상: Microsoft Dynamics CRM 2011
원래 KB 번호: 946286

증상

Microsoft Dynamics CRM 설치합니다. Microsoft Dynamics CRM 로그인하려고 하면 다음 오류 메시지가 표시됩니다.

로그인에서 요청한 데이터베이스 "조직_MSCRM"을 열 수 없습니다.
로그인에 실패했습니다. 사용자 'NT AUTHORITY\NETWORK SERVICE'에 대한 로그인이 실패했습니다.

Web.config 파일에서 DevErrors 값이 On 으로 설정된 경우 다음과 유사한 오류 메시지가 표시됩니다.

'/' 애플리케이션의 서버 오류입니다.

로그인에서 요청한 데이터베이스 "MSCRM_CONFIG"을(를) 열 수 없습니다. 로그인에 실패했습니다.
사용자 'Domain\CRMServer$'에 대한 로그인이 실패했습니다.
설명: 현재 웹 요청을 실행하는 동안 처리되지 않은 예외가 발생했습니다. 오류 및 코드에서 발생한 위치에 대한 자세한 내용은 스택 추적을 검토하세요.

예외 세부 정보: System.Data.SqlClient.SqlException: 로그인에서 요청한 "MSCRM_CONFIG" 데이터베이스를 열 수 없습니다. 로그인에 실패했습니다. 사용자 'Domain\CRMServer$'에 대한 로그인이 실패했습니다.

원본 오류:

현재 웹 요청을 실행하는 동안 처리되지 않은 예외가 생성되었습니다. 예외의 원본 및 위치에 대한 정보는 아래 예외 스택 추적을 사용하여 식별할 수 있습니다.

스택 추적:

[SqlException(0x80131904): 로그인에서 요청한 데이터베이스 "MSCRM_CONFIG"을 열 수 없습니다. 로그인에 실패했습니다.

사용자 'Domain\CRMServer$'에 로그인하지 못했습니다.]

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, String connectionString, Int32& maxBlobSize) +125
Microsoft.Crm.SharedDatabase.DatabaseMetadata.LoadCacheFromDatabase(CrmDBConnectionType connectionType, String 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(String tableName, String[] columns, PropertyBag[] conditions) +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
버전 정보: Microsoft .NET Framework 버전:2.0.50727.832; ASP.NET 버전:2.0.50727.832

원인

이 문제는 다음 조건 중 하나 이상이 참인 경우에 발생합니다.

  • 다중 서버 환경에 Microsoft Dynamics CRM 설치합니다. 그런 다음 Microsoft SQL Server 실행하는 서버에 직접 Microsoft Dynamics CRM 설치합니다. 그러나 일부 SQL Server 권한이 설정되지 않았습니다.
  • Microsoft Dynamics CRM 서버는 Active Directory 디렉터리 서비스의 SQLAccessGroup 그룹에 추가되지 않습니다.

해결 방법

이 문제를 resolve 하려면 다음 방법 중 하나 이상을 사용합니다.

방법 1

NT AUTHORITY\NETWORK SERVICE 계정을 Microsoft Dynamics CRM 데이터베이스에 대한 액세스 권한이 있는 SQL Server 사용자로 설정합니다. 이렇게 하려면 다음과 같이 하십시오.

  1. 시작을 선택하고 모든 프로그램을 가리킨 다음 Microsoft SQL Server 2005를 가리킨 다음 SQL Management Studio를 선택합니다.

    참고

    Dynamics CRM 2011의 경우 Microsoft SQL Server 2008이 됩니다.

  2. SQL Server Management Studio 로그인하려면 확인을 선택합니다.
  3. 개체 탐색기 데이터베이스를 확장하고 Organization_MSCRM 데이터베이스를 확장한 다음 보안을 확장합니다.
  4. 사용자를 마우스 오른쪽 단추로 클릭한 다음 새 사용자를 선택합니다.
  5. 데이터베이스 사용자 - 새 대화 상자의 다음 필드에 NT AUTHORITY\NETWORK SERVICE를 입력합니다.
    • 사용자 이름 필드입니다.
    • 로그인 이름 필드입니다.
  6. 데이터베이스 역할 멤버 자격 영역에서 db_owner 검사 상자를 선택한 다음 확인을 선택합니다.

방법 2

Active Directory의 SQLAccessGroup 그룹에 Microsoft Dynamics CRM 서버를 추가합니다. 이렇게 하려면 다음과 같이 하십시오.

  1. 시작을 선택하고 실행을 선택하고 dsa.msc를 입력한 다음 확인을 선택합니다.
  2. Microsoft Dynamics CRM 설치하는 조직 구성 단위를 선택합니다.
  3. SQLAccessGroup을 두 번 클릭합니다.
  4. SQLAccessGroup 대화 상자에서 구성원, 추가, 개체 유형, 컴퓨터 검사 상자를 차례로 선택한 다음 확인을 선택합니다.
  5. 선택할 개체 이름 입력 상자에 Microsoft Dynamics CRM 서버의 이름을 입력한 다음 이름 확인을 선택합니다.
  6. 선택할 개체 이름 입력 상자에서 Microsoft Dynamics CRM 서버의 이름을 사용할 수 있는지 확인한 다음 확인을 두 번 선택합니다.
  7. Microsoft Dynamics CRM 서버를 다시 시작합니다.