Sql server 2008 r2 无法将SQL Server 2008 R2 Express备份文件还原到SQL Server 2012 Express

Sql server 2008 r2 无法将SQL Server 2008 R2 Express备份文件还原到SQL Server 2012 Express,sql-server-2008-r2,sql-server-2012,Sql Server 2008 R2,Sql Server 2012,我有一个.bak文件,是我使用SQL Server 2008 R2 Express创建的 我尝试将其还原到SQL Server 2012 Express,但收到以下错误消息: Msg 5133,16级,状态1,第2行 文件“C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\RealEstate.mdf”的目录查找失败,操作系统错误3(系统找不到指定的路径) Msg 3156,第16级,第3状态,第2行

我有一个
.bak
文件,是我使用SQL Server 2008 R2 Express创建的

我尝试将其还原到SQL Server 2012 Express,但收到以下错误消息:

Msg 5133,16级,状态1,第2行
文件“C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\RealEstate.mdf”的目录查找失败,操作系统错误3(系统找不到指定的路径)

Msg 3156,第16级,第3状态,第2行
无法将文件“RealEstate”还原为“C:\Program Files\Microsoft SQL Server\MSSQLS10\U 50.MSSQLSERVER\MSSQL\DATA\RealEstate.mdf”。与MOVE一起使用可标识文件的有效位置

Msg 5133,16级,状态1,第2行
文件“C:\Program Files\Microsoft SQL Server\MSSQL10\u 50.MSSQLSERVER\MSSQL\DATA\realstate\u log.ldf”的目录查找失败,操作系统错误为3(系统找不到指定的路径)

Msg 3156,第16级,第3状态,第2行 无法将文件“RealEstate_log”还原为“C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\RealEstate_log.ldf”。与MOVE一起使用可标识文件的有效位置

Msg 3119,第16级,状态1,第2行
在规划RESTORE语句时发现了问题。以前的消息提供了详细信息

味精3013,第16级,状态1,第2行
还原数据库正在异常终止

有人能帮我解决这个问题吗

供您参考

.bak
文件是从上个月去世的旧电脑上运行的SQL Server 2008 R2数据库创建的

我刚买了一台新电脑,决定改为安装SQL Server 2012

我想将此
.bak
文件恢复到新电脑上运行的SQL Server 2012中

在SQL Server 2008 R2中,数据库存储在

C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA.
C:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA.
同时,在SQL Server 2012中,数据库存储在

C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA.
C:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA.

我想知道原始路径是否确实存储在
.bak
文件中。有人知道这一点吗?

如果您要从SQL 2008迁移到SQL 2012,请尝试类似的方法

RESTORE DATABASE DBName FROM DISK = 'C:\Path\To\Bak\File' WITH REPLACE;

这将不还原任何内容,但会显示bak文件的属性。在
Logicalname
列中,您将看到
(类型为D)和
(类型为L)

的名称!!格式化你的问题并使其可读。是的-当然是路径!阅读错误消息(系统找不到指定的路径)-它清楚地告诉您,它正在尝试将文件从备份存储到新机器上不再存在的旧(2008 R2)路径!您需要还原备份文件,并明确指定文件应放在哪里(到新目录)。您之前是否在2012服务器上创建了同名的空白数据库?