在SQL 2008中还原多个数据库的最有效方法是什么

Jer*_*ade 6 sql migration data-migration sql-server-2008

我正在进行大规模服务器迁移,因此我必须将50多个SQL 2005数据库移动到新的SQL 2008服务器安装.

数据库人员只给了我一个每个数据库的备份,所以我有一个目录,其中有50个.bak文件位于我需要恢复的目录(即c:\ db)中.

我需要将每个数据库还原到新服务器.

我可以在Management Studio中单独执行此操作,但这将非常耗时.有没有更有效的方法来解决这个问题.

所以我的问题是:

恢复所有这些数据库的最有效方法是什么.

机器背景:服务器是Win 2k8,带有SQL 2008 Workgroup Edition,.net 4与Powershell 2一起安装.

提前致谢.

And*_*mar 6

评论后编辑:您可以编写脚本还原,例如:

restore database DatabaseName
from disk = N'c:\dir\BackupFileName.bak'
with file = 1,  
move N'DatabaseName' to N'c:\dir\DatabaseName.mdf',  
move N'DatabaseName_log' to N'c:\dir\DatabaseName.ldf',  
stats = 10, 
recovery 
Run Code Online (Sandbox Code Playgroud)

这两move行将文件移动到新服务器上的某个位置.通常名称是DatabaseName和DatabaseName_log,但它们可以变化.

借助recovery手段:将数据库联机,无需等待额外的日志恢复.

要生成这样的脚本,请单击"还原数据库"向导窗口中的"脚本"按钮(左上角),然后单击"确定" Script action to....