我将 SQL Server 2008 R2 Standard(版本 10.50.1600.1)用于我的生产网站,将带有高级服务的 SQL Server Express 版本(v10.50.1600.1)用于我的本地主机作为数据库。
几天前我的 SQL Server 崩溃了,我不得不在我的本地主机上安装一个新的 2008 R2 Express 版本。当我恢复从 Express 版本中获取的一些旧版本时它工作正常,但是当我尝试从.bak
从生产服务器获取的文件中恢复数据库时,它会导致以下错误:
错误:指定的强制转换无效。(SqlManagerUI)
当我尝试使用命令恢复数据库时
Use Master
Go
RESTORE DATABASE Publications
FROM DISK = 'C:\Publications.bak'
WITH MOVE 'Publications' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS2008R2\MSSQL\DATA\Publications.mdf',--adjust path
MOVE 'AlPublications_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS2008R2\MSSQL\DATA\Publications.ldf'
它会产生不同的错误
消息 3154,级别 16,状态 4,第 1 行
备份集包含一个数据库的备份,而不是现有的“出版物”数据库。
消息 3013,级别 16,状态 1,第 1 行
RESTORE DATABASE 异常终止。
我已经交叉检查了版本。它们似乎都与我匹配,如下图所示
以前我能够将数据库从标准版本恢复到快速版本,但现在它失败了。我删除了数据库并尝试重新创建它。那也失败了。
我不确定我做错了什么。我将不胜感激在这方面的帮助
问题已解决,因为 .bak 文件似乎已损坏。当我尝试使用不同的文件时,它起作用了。