SQL server服务启动失败

时间:2022-05-13 17:32:20

I have been trying to start the sql server from last 12 hours but not quite sure what is happening. I got the error 1814 which is 'not sufficient space for tempdb' but I have 60GB of data in C: drive. Also, it is trying to open tables from E: drive which is my DVD drive which is not supposed to happen.

我一直在尝试从过去12个小时开始启动sql服务器,但不确定发生了什么。我得到了错误1814,它“没有足够的空间给tempdb”,但是我有60GB的数据在C: drive中。另外,它还试图打开E: drive这是我的DVD驱动器,这是不应该发生的。

Here by adding the logs. Please let me know whats wrong.

这里通过添加日志。请告诉我哪里不对劲。

2012-12-26 12:24:06.34 Server      Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (Intel X86) 
Mar 29 2009 10:27:29 
Copyright (c) 1988-2008 Microsoft Corporation
Express Edition on Windows NT 6.1 <X86> (Build 7601: Service Pack 1)

2012-12-26 12:24:06.34 Server      (c) 2005 Microsoft Corporation.
2012-12-26 12:24:06.34 Server      All rights reserved.
2012-12-26 12:24:06.34 Server      Server process ID is 3456.
2012-12-26 12:24:06.34 Server      System Manufacturer: 'WIPRO', System Model: 'WNB7PBM4930R-0007'.
2012-12-26 12:24:06.34 Server      Authentication mode is WINDOWS-ONLY.
2012-12-26 12:24:06.34 Server      Logging SQL Server messages in file 'c:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Log\ERRORLOG'.
2012-12-26 12:24:06.34 Server      This instance of SQL Server last reported using a process ID of 5716 at 12/26/2012 12:15:10 PM (local) 12/26/2012 6:45:10 AM (UTC). This is an informational message only; no user action is required.
2012-12-26 12:24:06.34 Server      Registry startup parameters: 
 -d c:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\master.mdf
 -e c:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Log\ERRORLOG
 -l c:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\mastlog.ldf
2012-12-26 12:24:06.36 Server      SQL Server is starting at normal priority base (=7). This is an informational message only. No user action is required.
2012-12-26 12:24:06.36 Server      Detected 2 CPUs. This is an informational message; no user action is required.
2012-12-26 12:24:06.41 Server      Using dynamic lock allocation.  Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node.  This is an informational message only.  No user action is required.
2012-12-26 12:24:06.48 Server      Node configuration: node 0: CPU mask: 0x00000003 Active CPU mask: 0x00000003. This message provides a description of the NUMA configuration for this computer. This is an informational message only. No user action is required.
2012-12-26 12:24:06.50 spid6s      Starting up database 'master'.
2012-12-26 12:24:06.62 spid6s      FILESTREAM: effective level = 0, configured level = 0, file system access share name = 'SQLEXPRESS'.
2012-12-26 12:24:06.65 spid6s      SQL Trace ID 1 was started by login "sa".
2012-12-26 12:24:06.65 spid6s      Starting up database 'mssqlsystemresource'.
2012-12-26 12:24:06.66 spid6s      The resource database build version is 10.00.2531. This is an informational message only. No user action is required.
2012-12-26 12:24:06.91 spid6s      Server name is 'L--COMPUTER\SQLEXPRESS'. This is an informational message only. No user action is required.
2012-12-26 12:24:06.91 spid10s     Starting up database 'model'.
2012-12-26 12:24:06.91 spid6s      Informational: No full-text supported languages found.
2012-12-26 12:24:06.91 spid6s      Starting up database 'msdb'.
2012-12-26 12:24:07.19 spid10s     Error: 17204, Severity: 16, State: 1.
2012-12-26 12:24:07.19 spid10s     FCB::Open failed: Could not open file e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\model.mdf for file number 1.  OS error: 21(The device is not ready.).
2012-12-26 12:24:07.19 spid10s     Error: 5120, Severity: 16, State: 101.
2012-12-26 12:24:07.19 spid10s     Unable to open the physical file "e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\model.mdf". Operating system error 21: "21(The device is not ready.)".
2012-12-26 12:24:07.20 spid6s      Error: 17204, Severity: 16, State: 1.
2012-12-26 12:24:07.20 spid6s      FCB::Open failed: Could not open file e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\MSDBData.mdf for file number 1.  OS error: 21(The device is not ready.).
2012-12-26 12:24:07.20 spid6s      Error: 5120, Severity: 16, State: 101.
2012-12-26 12:24:07.20 spid6s      Unable to open the physical file "e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\MSDBData.mdf". Operating system error 21: "21(The device is not ready.)".
2012-12-26 12:24:07.20 Server      A self-generated certificate was successfully loaded for encryption.
2012-12-26 12:24:07.20 Server      Server local connection provider is ready to accept connection on [ \\.\pipe\SQLLocal\SQLEXPRESS ].
2012-12-26 12:24:07.20 Server      Server local connection provider is ready to accept connection on [ \\.\pipe\MSSQL$SQLEXPRESS\sql\query ].
2012-12-26 12:24:07.20 Server      Dedicated administrator connection support was not started because it is disabled on this edition of SQL Server. If you want to use a dedicated administrator connection, restart SQL Server using the trace flag 7806. This is an informational message only. No user action is required.
2012-12-26 12:24:07.22 Server      The SQL Server Network Interface library could not register the Service Principal Name (SPN) for the SQL Server service. Error: 0x54b, state: 3. Failure to register an SPN may cause integrated authentication to fall back to NTLM instead of Kerberos. This is an informational message. Further action is only required if Kerberos authentication is required by authentication policies.
2012-12-26 12:24:07.22 Server      SQL Server is now ready for client connections. This is an informational message; no user action is required.
2012-12-26 12:24:07.45 spid10s     Error: 17207, Severity: 16, State: 1.
2012-12-26 12:24:07.45 spid10s     FileMgr::StartLogFiles: Operating system error 2(The system cannot find the file specified.) occurred while creating or opening file 'e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\modellog.ldf'. Diagnose and correct the operating system error, and retry the operation.
2012-12-26 12:24:07.45 spid10s     File activation failure. The physical file name "e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\modellog.ldf" may be incorrect.
2012-12-26 12:24:07.45 spid10s     Error: 945, Severity: 14, State: 2.
2012-12-26 12:24:07.45 spid10s     Database 'model' cannot be opened due to inaccessible files or insufficient memory or disk space.  See the SQL Server errorlog for details.
2012-12-26 12:24:07.45 spid10s     Could not create tempdb. You may not have enough disk space available. Free additional disk space by deleting other files on the tempdb drive and then restart SQL Server. Check for additional errors in the event log that may indicate why the tempdb files could not be initialized.
2012-12-26 12:24:07.45 spid10s     SQL Trace was stopped due to server shutdown. Trace ID = '1'. This is an informational message only; no user action is required.
2012-12-26 12:24:07.45 spid6s      Error: 17207, Severity: 16, State: 1.
2012-12-26 12:24:07.45 spid6s      FileMgr::StartLogFiles: Operating system error 2(The system cannot find the file specified.) occurred while creating or opening file 'e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\MSDBLog.ldf'. Diagnose and correct the operating system error, and retry the operation.
2012-12-26 12:24:07.48 spid6s      File activation failure. The physical file name   "e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\MSDBLog.ldf" may be incorrect.

2 个解决方案

#1


2  

Look at these links:

看看这些链接:

1) Make sure you UNCHECK "Compress contents to save disk space" for the file tempdb.mdf

1)确保取消对文件tempdb.mdf的“压缩内容以节省磁盘空间”检查

2) Make sure you are NOT saving tempdb in a compressed folder

2)确保没有将tempdb保存到压缩文件夹中

ALSO:

另外:

What's this error:

这是什么错误:

e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\model.mdf

e:\ sql10_main_t \ sql \ mkmastr \ \ objfre \ i386 \ model.mdf数据库

Maybe you want to just take "model" offline?

也许你只想把“model”脱机?

#2


0  

I had the same problem with SQL Express. MS SQL installers are very buggy. Several times I've gotten into situations where I just had to reinstall the OS. For this particular issue, the solution is here: https://social.technet.microsoft.com/wiki/contents/articles/31786.sql-server-not-starting-after-fresh-installation.aspx.

我对SQL Express也有同样的问题。MS SQL安装程序非常轻便。有好几次,我不得不重新安装操作系统。对于这个特定的问题,解决方案如下:https://social.technet.microsoft.com/wiki/contents/articles/31786.sql-server-not-start -after freshing .aspx。

The essential bits are:

最重要的部分是:

Start the service from the command line using the following command

使用以下命令从命令行启动服务。

NET START MSSQLSERVER /f /T3608

Run the command-line query processor:

运行命令行查询处理器:

SQLCMD –S .\

or

SQLCMD –S .\INSTANCENAME

Check the paths of the databases:

检查数据库路径:

SELECT name, physical_name, state_desc FROM sys.master_files ORDER BY database_id;
go

Fix the database paths:

解决数据库路径:

ALTER DATABASE model MODIFY FILE ( NAME = modeldev, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\model.mdf');
ALTER DATABASE model MODIFY FILE ( NAME = modellog, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\modellog.ldf');
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBData, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\MSDBData.mdf');
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBLog, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\MSDBLog.ldf');
ALTER DATABASE tempdb MODIFY FILE ( NAME = tempdev, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\temp.mdf');
ALTER DATABASE tempdb MODIFY FILE ( NAME = templog, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\temp.ldf');
go

Exit and restart the service:

退出并重新启动服务:

exit
NET STOP MSSQLSERVER
NET START MSSQLSERVER

#1


2  

Look at these links:

看看这些链接:

1) Make sure you UNCHECK "Compress contents to save disk space" for the file tempdb.mdf

1)确保取消对文件tempdb.mdf的“压缩内容以节省磁盘空间”检查

2) Make sure you are NOT saving tempdb in a compressed folder

2)确保没有将tempdb保存到压缩文件夹中

ALSO:

另外:

What's this error:

这是什么错误:

e:\sql10_main_t\sql\mkmastr\databases\objfre\i386\model.mdf

e:\ sql10_main_t \ sql \ mkmastr \ \ objfre \ i386 \ model.mdf数据库

Maybe you want to just take "model" offline?

也许你只想把“model”脱机?

#2


0  

I had the same problem with SQL Express. MS SQL installers are very buggy. Several times I've gotten into situations where I just had to reinstall the OS. For this particular issue, the solution is here: https://social.technet.microsoft.com/wiki/contents/articles/31786.sql-server-not-starting-after-fresh-installation.aspx.

我对SQL Express也有同样的问题。MS SQL安装程序非常轻便。有好几次,我不得不重新安装操作系统。对于这个特定的问题,解决方案如下:https://social.technet.microsoft.com/wiki/contents/articles/31786.sql-server-not-start -after freshing .aspx。

The essential bits are:

最重要的部分是:

Start the service from the command line using the following command

使用以下命令从命令行启动服务。

NET START MSSQLSERVER /f /T3608

Run the command-line query processor:

运行命令行查询处理器:

SQLCMD –S .\

or

SQLCMD –S .\INSTANCENAME

Check the paths of the databases:

检查数据库路径:

SELECT name, physical_name, state_desc FROM sys.master_files ORDER BY database_id;
go

Fix the database paths:

解决数据库路径:

ALTER DATABASE model MODIFY FILE ( NAME = modeldev, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\model.mdf');
ALTER DATABASE model MODIFY FILE ( NAME = modellog, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\modellog.ldf');
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBData, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\MSDBData.mdf');
ALTER DATABASE msdb MODIFY FILE ( NAME = MSDBLog, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\MSDBLog.ldf');
ALTER DATABASE tempdb MODIFY FILE ( NAME = tempdev, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\temp.mdf');
ALTER DATABASE tempdb MODIFY FILE ( NAME = templog, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\temp.ldf');
go

Exit and restart the service:

退出并重新启动服务:

exit
NET STOP MSSQLSERVER
NET START MSSQLSERVER