似乎系统出了大问题,重起了一下仍然没有解决,使用DBCC CheckDB Master 尝试修复,但是没有异常。
于是,准备重新恢复master数据库
在恢复master的备份时必须在单用户(single user)模式下进行
进入单用户模式的方法:
首先,在命令行模式下输入sqlservr -c -f -m或者输入sqlservr -m
其中:-c 可以缩短启动时间,SQL Server不作为Windows NT的服务启动;
-f 用最小配置启动SQL Server;
-m 单用户模式启动SQL Server。
也可以在控制面板-服务-MSSQLServer的启动参数中输入-c -f -m或者输入-m,点击开始
其次,进行master数据库的恢复
直接进入查询分析器,有个提示不要理会它。输入恢复语句进行数据库恢复:
RESTORE DATABASE master from disk='master.bak'
完成后,重起了sql服务,居然一切都恢复了。
虽然不知道是什么导致了这些问题,但是恢复master最终解决了问题。
对于master数据库彻底垮掉的情况,可以使用下面的步骤修复
重建Master库,使用Rebuildm.exe,将用到SQL的安装文件,从安装目录X86\Data中拷取原文件。
重建成功后,不要启动SQL Server,以单用户模式进入SQL
然后还原数据库备份即可:
restore database master from disk='e:\master.bak'