Impossibile aprire il database richiesto dall'errore di accesso quando si accede a Microsoft Dynamics CRM
Questo articolo fornisce una soluzione per il problema per cui potrebbe essere visualizzato il messaggio "Impossibile aprire il database Organization_MSCRM" richiesto dall'errore di accesso quando si accede a Microsoft Dynamics CRM.
Si applica a: Microsoft Dynamics CRM 2011
Numero KB originale: 946286
Sintomi
Installare Microsoft Dynamics CRM. Quando si tenta di accedere a Microsoft Dynamics CRM, viene visualizzato il messaggio di errore seguente:
Impossibile aprire il database "Organization_MSCRM" richiesto dall'account di accesso.
Accesso non riuscito. Accesso non riuscito per l'utente 'NT AUTHORITY\NETWORK SERVICE'.
Se il valore DevErrors è impostato su Sì nel file Web.config, viene visualizzato un messaggio di errore simile al seguente:
Errore del server nell'applicazione '/'.
Impossibile aprire il database "MSCRM_CONFIG" richiesto dall'account di accesso. Accesso non riuscito.
Accesso non riuscito per l'utente 'Domain\CRMServer$'.
Descrizione: si è verificata un'eccezione non gestita durante l'esecuzione della richiesta Web corrente. Esaminare la traccia dello stack per altre informazioni sull'errore e sulla posizione in cui ha avuto origine nel codice.Dettagli eccezione: System.Data.SqlClient.SqlException: impossibile aprire il database "MSCRM_CONFIG" richiesto dall'account di accesso. Accesso non riuscito. Accesso non riuscito per l'utente 'Domain\CRMServer$'.
Errore di origine:
Durante l'esecuzione della richiesta Web corrente è stata generata un'eccezione non gestita. Le informazioni relative all'origine e alla posizione dell'eccezione possono essere identificate usando la traccia dello stack di eccezioni riportata di seguito.
Analisi dello stack:
[SqlException (0x80131904): impossibile aprire il database "MSCRM_CONFIG" richiesto dall'account di accesso. Accesso non riuscito.
Accesso non riuscito per l'utente '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
Informazioni sulla versione: Microsoft .NET Framework versione:2.0.50727.832; ASP.NET versione:2.0.50727.832
Causa
Questo problema si verifica se si verifica una o più delle condizioni seguenti:
- Si installa Microsoft Dynamics CRM in un ambiente a più server. Installare quindi Microsoft Dynamics CRM direttamente in un server che esegue Microsoft SQL Server. Tuttavia, alcune autorizzazioni SQL Server non sono impostate.
- Il server Microsoft Dynamics CRM non viene aggiunto al gruppo SQLAccessGroup nel servizio directory Active Directory.
Risoluzione
Per risolvere il problema, usare uno o più dei metodi seguenti.
Metodo 1
Configurare l'account NT AUTHORITY\NETWORK SERVICE come utente SQL Server che ha accesso ai database Microsoft Dynamics CRM. A tal fine, attenersi alla seguente procedura:
- Selezionare Start, scegliere Tutti i programmi, Microsoft SQL Server 2005 e quindi SQL Management Studio.
Nota
Per Dynamics CRM 2011, sarà Microsoft SQL Server 2008.
- Per accedere a SQL Server Management Studio, selezionare OK.
- In Esplora oggetti espandere Database, espandere il database Organization_MSCRM e quindi espandere Sicurezza.
- Fare clic con il pulsante destro del mouse su Utenti e quindi scegliere Nuovo utente.
- Nella finestra di dialogo Utente database - Nuovo digitare NT AUTHORITY\NETWORK SERVICE nei campi seguenti:
- Campo Nome utente .
- Campo Nome account di accesso.
- Nell'area Appartenenza al ruolo database selezionare la casella di controllo db_owner e quindi selezionare OK.
Metodo 2
Aggiungere il server Microsoft Dynamics CRM al gruppo SQLAccessGroup in Active Directory. A tal fine, attenersi alla seguente procedura:
- Selezionare Start, selezionare Esegui, digitare dsa.msc e quindi selezionare OK.
- Selezionare l'unità organizzativa in cui installare Microsoft Dynamics CRM.
- Fare doppio clic su SQLAccessGroup.
- Nella finestra di dialogo SQLAccessGroup selezionare Membri, selezionare Aggiungi, selezionare Tipi di oggetto, selezionare la casella di controllo Computer e quindi selezionare OK.
- Nella casella Immettere i nomi degli oggetti da selezionare digitare il nome del server Microsoft Dynamics CRM e quindi selezionare Controlla nomi.
- Verificare che il nome del server Microsoft Dynamics CRM nella casella Immettere i nomi degli oggetti da selezionare sia disponibile e quindi selezionare OK due volte.
- Riavviare il server Microsoft Dynamics CRM.