Échec de CREATE DATABASE. Impossible d'allouer suffisamment d'espace sur les disques spécifiés pour une nouvelle base de données

Microsoft.SQLServer.2008.CREATE_DATABASE_failed._Could_not_allocate_enough_disk_space_for_a_new_database_on_the_named_disks_1_5_Rule (Rule)

Knowledge Base article:

Résumé

Cette erreur se produit lorsque l'espace est insuffisant sur le périphérique pour créer la base de données model.

Solutions

La procédure de traitement de cette erreur varie selon que l'erreur s'est produite sur une base de données utilisateur ou tempdb.

Si l'erreur s'est produite sur une base de données utilisateur

Si l'erreur s'est produite sur tempdb

Si vous avez déplacé tempdb d'un périphérique vers un périphérique par défaut quelconque et que l'espace y est insuffisant (2 Mo), Microsoft® SQL Server™ tente de créer tempdb sur un autre périphérique. Si vous ne disposez pas d'un périphérique avec au moins 2 Mo d'espace libre, SQL Server ne démarre pas. Démarrez SQL Server en utilisant l'option de configuration minimale -f

Vous pouvez libérer au moins 2 Mo sur le périphérique, ou créer un nouveau périphérique disposant au moins de 2 Mo. Si vous créez un nouveau périphérique, assurez-vous qu'il est défini comme périphérique par défaut, comme dans l'exemple suivant :

sp_diskdefault nom_nouveau_périphérique, defaulton

En l'absence de valeur par défaut, SQL Server envoie un message « mémoire insuffisante » (vous pouvez ignorer ce message) et transfère automatiquement tempdb en mémoire vive

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID1803
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
Échec de CREATE DATABASE. Impossible d'allouer suffisamment d'espace sur les disques spécifiés pour une nouvelle base de données
{0}
Event LogApplication
CommentMom2008ID='{9722C604-8246-478A-A7CC-36B31045A847}';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.CREATE_DATABASE_failed._Could_not_allocate_enough_disk_space_for_a_new_database_on_the_named_disks_1_5_Rule" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2008ID='{9722C604-8246-478A-A7CC-36B31045A847}';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>1803</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2008.CREATE_DATABASE_failed._Could_not_allocate_enough_disk_space_for_a_new_database_on_the_named_disks_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>