SqlServer服务无法启动的处理方法

数据库 SQL Server
在使用SqlServer数据库的时候,有时候会遇到SqlServer服务无法启动的情况,下面就为您介绍该问题的解决方法,供您参考。

SqlServer服务无法启动,应该如何解决呢?下面就教您一个SqlServer服务无法启动的处理方法,如果您也遇到过类似的问题,不妨一看。

我们知道SQL Server中最重要的一个数据库是master数据库,这个系统数据库如果有损坏的话,毫无疑问服务器就将不能正常地提供服务。

在某些时候,master数据库确实受到损坏,无法通过正常的方式登陆了,那么管理员应该怎么样去想办法对其进行还原操作呢?

在SQL Server的设计中提供了所谓的单用户模式(或者也称为管理模式),通常在危急关头,我们会以这种模式来启动SQL Server,并对master数据库进行还原操作

在SQL Server 2000的时候,我们可以通过下列命令行的方式启动单用户模式(SQL Server的服务必须先停止)

sqlservr -m

这时会以管理员模式启动SQL Server的主服务,你也可以看到如下面这样的一些输出,实际上这也是每次SQL Server服务启动时所做的一些事情

2007-03-08 18:22:03.46 server    Microsoft SQL Server 2000 - 8.00.2039 (Intel X86)
May 3 2005 23:18:38
Copyright (c) 1988-2003 Microsoft Corporation
Developer Edition on Windows NT 5.1 (Build 2600: Service Pack 2)
2007-03-08 18:22:03.46 server    Copyright (C) 1988-2002 Microsoft Corporation.
2007-03-08 18:22:03.46 server    保留所有权利。
2007-03-08 18:22:03.46 server    服务器进程 ID 是 2976。
2007-03-08 18:22:03.46 server    将 SQL Server 消息记录在文件“C:\Program Files\Microsoft SQL Server\MSSQL\log\ERRORLOG”中。
2007-03-08 18:22:03.48 server    SQL Server 正在以优先级“normal”(已检测到 1 CPU)启动。
2007-03-08 18:22:03.50 server    已为 thread 模式处理而配置了 SQL Server。
2007-03-08 18:22:03.51 server    使用 dynamic 锁分配。[2500] 锁块,[5000] 锁所有者块。
2007-03-08 18:22:03.52 server    尝试初始化分布式事务处理协调器。
2007-03-08 18:22:03.55 server    Failed to obtain TransactionDispenserInterface: XACT_E_TMNOTAVAILABLE
2007-03-08 18:22:03.56 spid3     警告 ******************
2007-03-08 18:22:03.56 spid3     SQL Server 以单用户模式启动。允许对系统目录进行更新。
2007-03-08 18:22:03.56 spid3     启动数据库“master”。
2007-03-08 18:22:04.38 spid3     0 个事务在数据库“master”中后滚 (1)。
2007-03-08 18:22:04.38 spid3     恢复操作正在对数据库 'master'(1)执行检查点操作。
2007-03-08 18:22:04.51 server    正在使用“SSNETLIB.DLL”版本“8.0.2039”。
2007-03-08 18:22:04.52 spid5     启动数据库“model”。
2007-03-08 18:22:04.53 server    SQL Server 正在监听 169.254.10.189: 1433。
2007-03-08 18:22:04.53 server    SQL Server 正在监听 127.0.0.1: 1433。
2007-03-08 18:22:04.53 server    SQL Server 正在监听 TCP, Shared Memory, Named Pipes。
2007-03-08 18:22:04.53 server    SQL Server 已准备好进行客户端连接
2007-03-08 18:22:04.56 spid3     服务器名称是“THINKER-XP”。
2007-03-08 18:22:04.56 spid7     启动数据库“msdb”。
2007-03-08 18:22:04.56 spid8     启动数据库“pubs”。
2007-03-08 18:22:04.56 spid9     启动数据库“Northwind”。
2007-03-08 18:22:04.56 spid10    启动数据库“ReportServer”。
2007-03-08 18:22:05.71 spid8     启动数据库“ReportServerTempDB”。
2007-03-08 18:22:05.73 spid5     清除 tempdb 数据库。
2007-03-08 18:22:05.84 spid9     启动数据库“AdventureWorks2000”。
2007-03-08 18:22:05.87 spid10    启动数据库“demo”。
2007-03-08 18:22:06.32 spid7     启动数据库“ClassNorthwind”。
2007-03-08 18:22:06.69 spid8     启动数据库“demo2”。
2007-03-08 18:22:10.89 spid5     启动数据库“tempdb”。
2007-03-08 18:22:11.12 spid3     恢复完成。
2007-03-08 18:22:11.12 spid3     SQL global counter collection task is created.

这时候你可以再登陆到企业管理器,对master数据库进行还原

如果这种方式还是无法修复错误的话呢,我们该怎么办?

当服务器出现无法修复的错误,最后的一个手段是重建系统数据库,然后全部重新附加或者还原用户数据库。

重建系统数据库的方法是运行下面这个工具

C:\Program Files\Microsoft SQL Server\80\Tools\Binn\Rebuildm.exe

SQL Server 2005的时候,要进入单用户模式的命令行工具是

sqlcmd -A

或者登陆Management Studio的时候,服务器名字前面加上 "Admin:",并且以sa和密码登陆


 

 

【编辑推荐】

SQL Server连接错误的解决方法

25条mysql和sql server区别

SQL Server自增字段的方法

教您如何修改sql server时间

SQL Server时间算法大全

责任编辑:段燃 来源: 互联网
相关推荐

2010-11-10 11:21:50

SQL Server代

2011-04-11 16:42:05

Oracle无法启动

2013-06-28 10:01:29

Ubuntu软Raid故障处理

2010-10-21 15:57:37

SQL Server无

2010-11-19 14:56:16

oracle服务丢失

2010-03-31 10:46:24

2010-04-15 11:10:26

Oracle无法启动监

2010-10-21 15:34:27

SQL SERVER服

2024-11-11 14:40:21

2010-11-19 15:25:48

关闭Oracle服务

2010-11-10 10:59:52

Sql Server服

2010-10-21 15:52:50

sql server服

2009-08-14 16:02:50

C#启动windows

2010-02-22 17:43:19

WCF服务启动

2010-10-21 09:43:15

2010-10-22 15:59:59

sqlserver删除

2013-01-29 13:22:24

系统服务

2017-02-10 11:00:59

Windows服务器filebeat

2011-03-21 15:25:52

MySQL系统错误

2018-01-23 10:23:53

点赞
收藏

51CTO技术栈公众号