MSSQLSERVER服务启动后又停止的处理方法

时间:2022-07-23 04:48:18
今天值班时遇到南山海雅店铺POS和考勤不能使用的问题,连接到他们电脑上发现数据库已停止,无法启动。启动时会弹出“本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的”。查看系统日志发现如下错误“18052: 错误: 9003,严重度: 20,状态: 1。 ”
      这个问题在我们公司店铺一直存在,有很多店铺都出现过这种问题,之前和梁艳姣,小吴都检查过是master数据库损坏的原因导致的。以前都是重装数据库,然后再恢复数据,这种方法比较麻烦。今天在网上查了一下,可以通过修复master库的方式启动sqlserver数据库。
     解决方法:(网上查的,测试过可以)
    将D:\sqldata\MSSQL\Data\目录名Data改为Data_bak(备份),然后从其他正常店铺的电脑上把Data目录下除了POS和Product_Image库(数据和日志文件)外的所有数据库(需把数据库服务全部停止才能复制,我提取了一份放在自己电脑上,压缩后大概13M左右)拷到另一个文件夹(随便放在D盘或E盘哪个目录下都可以)。
    在服务器上打开C:\Program Files\Microsoft SQL Server\80\Tools\Binn文件夹,找到rebuildm.exe文件并运行,重新初始化master表,选择文件,按旁边的浏览,指向刚刚从其他电脑上拷过来的那个文件夹(开始我只拷贝了master和model库,提示找不到文件,就把所有系统数据库全拷过来了),点确定开始重新初始化,初始化时会新建DATA文件夹,等几分钟,提示成功(我初始化提示失败。重启后发现sqlserver启动正常),重启电脑,把POS和Product_Image库还原到系统新建DATA文件夹,打开企业管理器远程连接到店铺SQL,把POS和Product_Image数据库附加上即可。(我操作的时候附加前在企业管理器里可以看到POS和Product_Image库,但POS库不正常,Product_Image正常。就把POS库先剪切出去,从企业管理器里删除掉POS,然后把POS库还原回来,附加上就正常了)
     最后清理战场,把Data_bak文件夹删掉