我有一个SQL Server .bak文件。在属性下,显示“使用记事本打开”。当我尝试从显示“用记事本打开”的.bak文件还原时,出现以下错误“无法打开备份设备。'L:...'操作系统错误2(系统找不到指定的文件) ”。但是,当我从一个清晰的.BAK文件还原时,注意到“用记事本打开”时,还原过程可以正常进行。如何还原此类文件? (所有内容都在同一台服务器上,并且我拥有SQL Server 2012标准版)。请参阅随附的屏幕截图。 [BakFile屏幕快照] [[1]:https://i.stack.imgur.com/G1XUW.png
答案 0 :(得分:0)
您忘记将.bak
扩展名放在日期为7/9/2018的备份上,但记得在日期为5/27的备份上添加了.bak
扩展名。 SQL Server不会自动将.bak
添加到备份文件。如果您忘记添加它,则备份文件看起来像您的日期为2018年7月9日。
有人一次双击一个.bak
文件,Windows询问用户如何打开该文件。他们选择了记事本。 Windows将.bak
文件扩展名与记事本相关联,因此,当您双击.bak
文件时(或右键单击它时,您会看到Open with Notepad
,因为{{ 1}}与记事本关联。
您无法轻易删除.bak
与记事本之间的关联,因为Microsoft从Windows XP之后的GUI中删除了删除文件类型关联的功能。以下是几个链接,这些链接说明了如何通过.bak
进行操作:
还原数据库时,应该不双击或右键单击Windows资源管理器中的备份文件。相反,您应该使用SQL Server Management Studio(SSMS)。右键单击Command Prompt
中的数据库,然后选择Object Explorer
,然后按照向导进行操作。或者,如果要将其还原到新数据库,请右键单击名为Tasks | Restore | Database
的对象,然后选择Databases
,然后按照向导进行操作。
SQL Server无法访问文件的原因可能是由于许多不同的原因。这是另一个寻求相同错误的用户的链接:How to restore a database from a .bak file?
您是否尝试过将文件复制到本地驱动器(而不是从网络映射的驱动器Restore Database
还原)?从L:
那里恢复运气可能更好...