代码改变世界

sqlserver 2008 R2 故障恢复移动文件

2012-04-18 10:13  java ee spring  阅读(235)  评论(0编辑  收藏  举报

朋友咨询的问题,这里给个参考步骤:

 

故障恢复移动文件

/*
如果数据库无法启动,即处于可疑模式下或处于未恢复状态,则只有 sysadmin 固定角色的成员才可以移动该文件。

*/

1.如果启动了 SQL Server 实例,则将其停止。

2.通过在命令提示符下输入下列命令之一,在仅 master 恢复模式下启动 SQL Server 实例。


 对于默认的 (MSSQLSERVER) 实例,请运行以下命令。


      NET START MSSQLSERVER /f /T3608


 对于命名实例,请运行以下命令。

      NET START MSSQL$instancename /f /T3608


3.对于要移动的每个文件,请使用 sqlcmd 命令或 SQL Server Management Studio 运行以下语句
ALTER DATABASE database_name MODIFY FILE( NAME = logical_name , FILENAME = 'new_path\os_file_name' );


4.退出 sqlcmd 实用工具或 SQL Server Management Studio


5.停止 SQL Server 实例


6.将拷贝移动到新位置

7.启动 SQL Server 实例
net start mssqlserver

8.通过运行以下查询来验证文件更改
SELECT name, physical_name AS CurrentLocation, state_desc
FROM sys.master_files
WHERE database_id = DB_ID(N'<database_name>');