CREATE DATABASE failed. Some file names listed could not be created. Check previous errors.

Microsoft.SQLServer.2000.CREATE_DATABASE_failed__Some_file_names_listed_could_not_be_created__Check_previous_errors (Rule)

Knowledge Base article:

Causes

If another error occurred at the same time as this error, this error could be a side effect of the other error.

The file path and/or file names specified in the CREATE DATABASE or ALTER DATABASE statement could not be accessed. If no path is specified, the default path configured for new databases for this instance of SQL Server must be valid.

Some examples that could cause this:

Resolutions

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\DefaultLog

Named Instance HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instancename\DefaultData

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instancename\DefaultLog

To move the shared cluster disk, select the disk you want to move to the SQL Server group, and then right-click that resource. Click Move Group. After the disk is in the same group in which the SQL Server resource resides, follow these steps to add it as a SQL Server dependency:

If another error occurred at the same time as this error, troubleshoot the other error first.

If you specified a path in your CREATE DATABASE or ALTER DATABASE statement, verify that the entire path is valid and is accessible. The path must be on the local computer for a nonclustered instance or on a shared clustered drive on which the SQL Server Resource is dependent for a clustered instance.

Verify that the specified file name is valid by manually creating a file with that name in the specified path.

If you are not specifying the full path in the CREATE DATABASE or ALTER DATABASE statement, check to see if the default data and log directories for new databases are correct, valid directories. If they are blank in SQL Enterprise Manager, verify that the underlying registry keys exist and that they have a valid path. If the keys do not exist at all, SQL Server will default to the data path specified during installation for all new database data and log files.

WARNING: If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

If the keys exist and the path specified is invalid, update the values to a valid path.

If the keys exist but are blank, either enter a valid path or delete the keys completely.

The SQL Server instance must be restarted for the registry key changes to take effect.

Default Instance

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\DefaultData

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\DefaultLog

Named Instance

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instancename\DefaultData

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instancename\DefaultLog

If the instance is clustered, verify that the disk specified in the CREATE DATABASE or ALTER DATABASE statement is listed as a disk resource on which SQL Server depends. In Cluster Administrator, verify that the shared disk resides in the same group as the SQL Server resource for this instance. If you right-click on the SQL Server Resource and check the Dependencies tab, you should see the specified shared disk in the list of dependencies. If it is not there, it will need to be added.

To move the shared cluster disk, select the disk you want to move to the SQL Server group, and then right-click that resource. Click Move Group. After the disk is in the same group in which the SQL Server resource resides, follow these steps to add it as a SQL Server dependency:

Right-click the SQL Server resource, and then bring the resource into an offline state by clicking Bring Offline.

Right-click the SQL Server resource, and then click Properties.

Click the Dependencies tab for the SQL Server Resource.

Click Add to add the disk to the dependencies list for that resource. After you complete these steps, you can now bring the SQL Server resource back online and place SQL Server files on that shared cluster disk.

External

For more information about setting the default data and log directories for new databases, see "SQL Server Properties (Database Settings Tab)" in Books Online and the Microsoft Knowledge Base articles, 836873 and 272705.

For more information about how to create databases or change disk file locations on a shared cluster drive on which SQL Server was not originally installed, see the Microsoft Knowledge Base article, 295732.

Element properties:

TargetMicrosoft.SQLServer.2000.DBEngine
CategoryEventCollection
EnabledTrue
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
CREATE DATABASE failed. Some file names listed could not be created. Check previous errors.
{0}
Event LogApplication
CommentMom2005ID='{E614A8C5-29A0-4625-A0B8-14C03E7ECBDF}'

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SQLServer.2000.CREATE_DATABASE_failed__Some_file_names_listed_could_not_be_created__Check_previous_errors" Target="SQL2000Core!Microsoft.SQLServer.2000.DBEngine" Enabled="true" Comment="Mom2005ID='{E614A8C5-29A0-4625-A0B8-14C03E7ECBDF}'" Remotable="true">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" 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="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>^(17052|17055)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005BooleanRegularExpression</Operator>
<Pattern>((^.*1802 and (not ^.*\n.*1802)) or (^.*1802.*\n.*1802)) AND (NOT ^.*[0-9]+.*1802) AND (NOT ^.*1802[0-9]+)</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2000.CREATE_DATABASE_failed__Some_file_names_listed_could_not_be_created__Check_previous_errors.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>