MSSQL 2014 : La base de données ne peut pas être ouverte, car des fichiers sont inaccessibles, ou la mémoire ou l'espace disque sont insuffisants

Microsoft.SQLServer.2014.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)

Cela renvoie une erreur 945 lorsque la base de données est marquée comme IsShutdow. Cela se produit lorsqu'une base de données ne peut être récupérée du fait de fichiers manquants ou d'autres erreurs liée aux ressources auxquelles il est généralement facile de remédier.

Knowledge Base article:

Résumé

L’erreur 945 est renvoyée lorsque la base de données est marquée IsShutdown. Cela se produit lorsqu’une base de données ne peut pas être récupérée en raison de l’absence de certains fichiers ou d’une erreur de ressource pouvant généralement être corrigée facilement.

Solutions

Vérifiez d'abord que la base de données est marquée IsShutdown à l'aide de DATABASEPROPERTY.

Déterminez ensuite la cause de l'erreur en consultant le journal des erreurs et procédez comme indiqué ci-dessous.

Vérifiez d'abord que la base de données est marquée IsShutdown à l'aide de DATABASEPROPERTY

Déterminez ensuite la cause de l'erreur en consultant le journal des erreurs et procédez comme indiqué ci-dessous.

S'il manque un ou plusieurs fichiers de données ou journaux :

Si l'espace journal est insuffisant :

Cette procédure permet de récupérer la base de données et de la mettre en ligne.

Si l'espace de données est insuffisant :

Cette procédure permet de récupérer la base de données et de la mettre en ligne.

Si la mémoire est insuffisante :

L'erreur d'insuffisance de mémoire peut se produire lors de la récupération simultanée de plusieurs bases de données. Le problème peut être corrigé en renouvelant l'opération :

Si le renouvellement de l'opération ne suffit pas, libérez de la mémoire.

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

Active ou désactive le flux de travail.

Oui

Priorité

Définit la priorité de l'alerte.

1

Severité

Définit la gravité de l'alerte.

1

Element properties:

TargetMicrosoft.SQLServer.2014.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID945
Event Source$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL 2014 : La base de données ne peut pas être ouverte, car des fichiers sont inaccessibles, ou la mémoire ou l'espace disque sont insuffisants
{0}
Event LogApplication
CommentMom2014ID='{3BC2D536-13F6-4982-B717-0DCF03213119}';MOM2014GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SQLServer.2014.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="SQL2014Core!Microsoft.SQLServer.2014.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2014ID='{3BC2D536-13F6-4982-B717-0DCF03213119}';MOM2014GroupID={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">
<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="SQL2014Core!Microsoft.SQLServer.2014.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.2014.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>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>