Impossibile aprire il database a causa di file inaccessibili oppure memoria o spazio su disco insufficiente. Per ulteriori informazioni, vedere il log degli errori di SQL Server

Microsoft.SQLServer.2008.Database_cannot_be_opened_due_to_inaccessible_files_or_insufficient_memory_or_disk_space._See_the_SQL_Server_errorlog_for_details_1_5_Rule (Rule)

Knowledge Base article:

Riepilogo

L'errore 945 si verifica quando il database è contrassegnato come IsShutdown. Questo avviene quando non è possibile recuperare il database a causa di file mancanti o di altri errori delle risorse che, in genere, sono facilmente risolvibili.

Soluzioni

Verificare innanzitutto che il database sia contrassegnato come IsShutdown utilizzando DATABASEPROPERTY.

Determinare quindi la causa dell'errore consultando il log degli errori ed eseguire l'azione appropriata secondo quanto indicato di seguito.

Verificare innanzitutto che il database sia contrassegnato come IsShutdown utilizzando DATABASEPROPERTY.

Determinare quindi la causa dell'errore consultando il log degli errori ed eseguire l'azione appropriata secondo quanto indicato di seguito.

In caso di mancanza di uno o più file di dati o di log:

In caso di mancanza di spazio nel log:

Il database viene recuperato e portato online tramite questa procedura.

In caso di mancanza di spazio per i dati:

Il database viene recuperato e portato online tramite questa procedura.

In caso di memoria insufficiente:

L'errore dovuto a memoria insufficiente può verificarsi quando viene eseguito il recupero contemporaneo di numerosi database. Ripetendo l'operazione, è possibile risolvere il problema:

Se la ripetizione dell'operazione non è sufficiente, è consigliabile liberare memoria.

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID945
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Impossibile aprire il database a causa di file inaccessibili oppure memoria o spazio su disco insufficiente. Per ulteriori informazioni, vedere il log degli errori di SQL Server
{0}
Event LogApplication
CommentMom2008ID='{3BC2D536-13F6-4982-B717-0DCF03213119}';MOM2008GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.Windows.EventProvider Microsoft.SQLServer.SQLDefaultAccount
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2008.Database_cannot_be_opened_due_to_inaccessible_files_or_insufficient_memory_or_disk_space._See_the_SQL_Server_errorlog_for_details_1_5_Rule" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2008ID='{3BC2D536-13F6-4982-B717-0DCF03213119}';MOM2008GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Windows!Microsoft.Windows.EventProvider" RunAs="SQL!Microsoft.SQLServer.SQLDefaultAccount">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>945</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2008.Database_cannot_be_opened_due_to_inaccessible_files_or_insufficient_memory_or_disk_space._See_the_SQL_Server_errorlog_for_details_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>