如果还原Master数据库后,SQLSERVER的服务无法开启,请注意是否因为其他的系统数据库在Master备份中记录的路径与现在的路径不一致导致的。

如果是,可以在cmd中执行“NET START MSSQLSERVER /f /T3608”把SQL SERVER实例启动到master-only恢复模式,再在SQL中执行如下列的语句,修改Master数据库中记录的其他的系统数据库的路径记录。

USE master;

GO

ALTER DATABASE mssqlsystemresource MODIFY FILE (NAME=data,FILENAME='D:\Study\SQLSERVER2005\MSSQL.1\MSSQL\DATA\mssqlsystemresource.mdf' );

ALTER DATABASE mssqlsystemresource MODIFY FILE

(NAME=log,FILENAME='D:\Study\SQLSERVER2005\MSSQL.1\MSSQL\DATA\mssqlsystemresource.ldf' );

ALTER DATABASE mssqlsystemresource SET READ_ONLY;

USE
master;

GO

ALTER
DATABASE model MODIFY FILE
(NAME=modeldev,FILENAME='D:\Study\SQLSERVER2005\MSSQL.1\MSSQL\DATA\model.mdf'
);

ALTER
DATABASE model MODIFY FILE
(NAME=modellog,FILENAME='D:\Study\SQLSERVER2005\MSSQL.1\MSSQL\DATA\modellog.ldf'
);

GO

USE
master;

GO

ALTER
DATABASE msdb MODIFY FILE
(NAME=MSDBData,FILENAME='D:\Study\SQLSERVER2005\MSSQL.1\MSSQL\DATA\msdbdata.mdf'
);

ALTER
DATABASE msdb MODIFY FILE
(NAME=MSDBLog,FILENAME='D:\Study\SQLSERVER2005\MSSQL.1\MSSQL\DATA\msdblog.ldf'
);

GO

USE
master;

GO

ALTER
DATABASE tempdb MODIFY FILE
(NAME=tempdev,FILENAME='D:\Study\SQLSERVER2005\MSSQL.1\MSSQL\DATA\tempdb.mdf'
);

ALTER
DATABASE tempdb MODIFY FILE
(NAME=templog,FILENAME='D:\Study\SQLSERVER2005\MSSQL.1\MSSQL\DATA\templog.ldf'
);

GO

05-07 15:49