2012-04-10 375 views
16

我有SQL Server 2008 R2中的数据库备份。 当我想将此备份还原到SQL Server时,出现此错误: “错误:指定的转换无效(SqlManagerUI)” 如何解决此错误? 谢谢。错误:指定的转换无效。 (SqlManagerUI)

+0

WITH MOVE' 'YourMDFLogicalName' TO 'd:\ DataYourMDFFile.mdf',' - 调整路径 MOVE' 'YourLDFLogicalName' TO“d:\ DataYourLDFFile.ldf'' MDF LDF – 2013-01-25 10:20:23

回答

12

有一些funnies通过家伙将旧数据库还原到SQL 2008中;你有没有试过通过TSQL做到这一点?

Use Master 
Go 
RESTORE DATABASE YourDB 
FROM DISK = 'C:\YourBackUpFile.bak' 
WITH MOVE 'YourMDFLogicalName' TO 'D:\Data\YourMDFFile.mdf',--check and adjust path 
MOVE 'YourLDFLogicalName' TO 'D:\Data\YourLDFFile.ldf' 
+2

是什么YourLDFLogicalName? – coure2011 2012-06-19 07:10:12

+0

SQL Server中文件的名称。在管理STudio;打开查询;使用您正在处理的数据库备份运行选择名称从sys文件名称列。 – u07ch 2012-06-20 06:37:27

+1

对于像我这样的noobs。 u07ch的评论是正确的,但在查询中包含一个错字: 从sysfiles中选择名称 – 2013-09-30 06:50:35

17

当您尝试在较旧的SQL数据库中恢复较新版本的备份时,也会发生这种情况。例如,当您尝试还原在2012年创建的具有110兼容性的数据库备份并且您试图在2008 R2中恢复它时。

+1

您是否有解决方案? – 2015-11-24 22:16:52

4

有时候会发生这种情况,因为版本更改就像2008年的商店2012分贝,所以如何检查它?

RESTORE VERIFYONLY FROM DISK = N'd:\yourbackup.bak' 

如果它给出错误等:

消息3241,级别16,状态13,行2 媒体家族设备 'd:\ alibaba.bak' 被不正确地形成。 SQL Server无法处理此媒体系列。 消息3013,级别16,状态1,行2 VERIFY DATABASE正在异常终止。

进一步检查它:

RESTORE HEADERONLY FROM DISK = N'd:\yourbackup.bak' 

BackupName是 “* INCOMPLETE *”, 位置为 “1”, 等领域都是 “NULL”。

意味着您的备份已损坏或从新版本中删除。

0

我有一个类似的错误 “指定的转换是无效” 从SQL Server 2012还原到SQL Server 2008 R2

首先,我得到了MDF和LDF名称:

RESTORE FILELISTONLY 
FROM DISK = N'C:\Users\dell laptop\DotNetSandBox\DBBackups\Davincis3.bak' 
GO 

其次,我与恢复一个移动使用这些名称返回:

RESTORE DATABASE Davincis3 
FROM DISK = 'C:\Users\dell laptop\DotNetSandBox\DBBackups\Davincis3.bak' 
WITH 
    MOVE 'JQueryExampleDb' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Davincis3.mdf', 
    MOVE 'JQueryExampleDB_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Davincis3.ldf', 
REPLACE 
GO 

我不知道名称“JQueryExampleDb”,但这对我有效。

尽管如此,备份(和数据库)不能向后兼容旧版本。

相关问题