【Vegas原创】SQL Server2005应急备机切换步骤 - 生产机已经不能使用,但有数据库备份
0. 前提环境:
生产机已经不能使用,但有数据库备份,包括master数据库的备份。 如生产机可以使用,只是要切换到备用机,详见另一篇文章
1.前期准备工作
(1)在备用机准备好和生产机器一样的sql2005数据库环境(注意数据库版本要一致)
(2)准备好备份恢复所需的数据 在生产机器D:\sqlbak\sqltemp找【或从自己的存储服务器找备份】,将bak文件全部copy到备用机d:\dbbak文件夹下。
注:本案例的数据库备份文件和目录格式为: d:\dbbak\[数据库名]\[数据库名]_backup_[Date].bak
如您的格式和本例不同,在后续步骤中可能会要进行大幅度的变动。
(3)备用机新建文件夹:D:\db
2.备用机应急恢复步骤
(1)停止所有sql server服务
注:必须停止所有SQL Server2005服务,否则步骤3进行连接时,会报错“服务器处于单用户模式,只有一位管理员能够连接”,切记!
(2)运行-> cmd -> sc start MSSQLServer -m -f 进入单用户模式
(3)打开Management Studio,弹出的连接到服务器窗口,点取消; 点击"新建查询",连接数据库,进入查询窗口;
(4)还原master数据库:
RESTORE DATABASE master FROM DISK=N'D:\dbbak\master\master_backup_201204210000.bak' WITH REPLACE, STATS GO
如果master一起移动到其他目录,请使用以下语句。当然,想必每天数据库都在做备份的,master路径转移意义不大。
RESTORE DATABASE master FROM DISK=N'D:\dbbak\master\master_backup_201204210000.bak' WITH MOVE 'master' TO N'D:\db\master.mdf', MOVE 'mastlog' TO N'D:\db\masterlog.ldf', REPLACE, STATS GO
(5)将RestoreSQL.exe放在D盘下 ,打开,【该执行文件已打包在本文附件中】 路径填:D:\dbbak,生成文件名填restore.txt,点击生成文件,文件生成在D:\dbbak。
(6)还原其他数据库: 正常启动sql server服务,打开restore.txt,复制到查询分析器中,删除master库还原语句,执行。
(7).测试(通过查询分析器选1个数据库测试是否正常即可)
与此文相关的sql2005备份的部署,参看: 【Vegas原创】SQL Server 2005部署备份任务