有很多香港VPS用户反馈重装为预装sqlserver模板的系统,sqlserver不能正常启动,经核实大部分都是用户保留数据重装更换另外模板的windows系统的原因。由于数据库安装在D盘,有些模板是没有安装sqlserver数据库的,重装前D盘并没有对应sqlserver版本的数据,而保留数据重装D盘的数据不会被替换,所以数据库不能启动。
以下是处理方法
处理前请先注意以下事项:
1、如果【D:\Program Files\】原本有Microsoft SQL Server目录,请先将目录改名。【D:\Program Files (x86)\】目录下Microsoft SQL Server也要改名。
2、D盘如果有mssql目录,请复制一份保留,然后清空D:\mssql里面文件。
一、windows2008+sql2008 不能启动:
手工下载:sql2008 将压缩包下载存放到D盘,右键--选择解压到当前文件夹
解压完成以后,在cmd命令行里面分别输入以下命令重置权限
cacls "D:\Program Files\Microsoft SQL Server" /e /g mssqluser:f /T
cacls "D:\Program Files (x86)\Microsoft SQL Server" /e /g mssqluser:f /T
cacls D:\mssql /e /g mssqluser:f /T
最后输入net start MSSQLSERVER 启动sqlserver数据库服务。
注意:有些服务器新安装的可能是westmssql账号,所以上面命令中mssqluser替换为westmssql。
二、windows2012+sql2012 不能启动:
手工下载sql2012 将压缩包下载存放到D盘,右键--选择解压到当前文件夹
在命令行里面执行以下命令:
cacls "D:\Program Files\Microsoft SQL Server" /e /g westmssql:f /T
cacls "D:\Program Files (x86)\Microsoft SQL Server" /e /g westmssql:f /T
cacls D:\mssql /e /g westmssql:f /T
然后执行net start MSSQLSERVER即可启动