2014-10-08 136 views
2

我试图从.bak文件恢复数据库。尝试在SQL Server 2012中恢复数据库时出错

我的问题是,当我打开SQL Management Studio并在数据库文件夹,点击右键并选择还原数据库,会出现错误信息:

没有备份集选择要还原。

这是之前我甚至选择我的.bak文件。

我试图以管理员身份运行Management Studio,但恢复窗口打开时仍出现此错误。

+0

我试图先创建一个空白数据库,但我得到相同的错误。 – Andy 2014-10-08 08:48:41

回答

2

你在哪个帐户下运行SQL Server引擎?该帐户是否有权访问备份文件的位置?

看看这个帖子上SSC与同样的问题。

http://www.sqlservercentral.com/Forums/Topic1455052-2799-1.aspx

总之,尝试恢复使用TSQL代码数据库。我通常这样做。如果只有一个备份集,则WITH FILE子句是可选的。

你能读取备份的文件列表吗?

-- Can you read the file list 
RESTORE FILELISTONLY 
FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2012.bak' 
    WITH FILE=1; 
GO 

检查备份的有效性。

-- Is this a valid backup? 
RESTORE VERIFYONLY 
FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2012.bak' 
    WITH FILE=1; 
GO 

尝试恢复数据库。

-- Simple restore, source and target file names and location are the same 
RESTORE DATABASE AdventureWorks2012 
    FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2012.bak' 
    WITH FILE = 1 
    RECOVERY; 

如果您想将文件移动到不同的名称或位置,请检查BOL。

http://msdn.microsoft.com/en-us/library/ms186858.aspx#restoring_full_db

总之,如果它是一个权限问题,你应该看到在查询窗口中的错误。