gpt4 book ai didi

SQL-Server:无法覆盖。正在被数据库使用

转载 作者:行者123 更新时间:2023-12-03 02:26:52 25 4
gpt4 key购买 nike

RESTORE DATABASE Tes
FROM DISK = '{7522204E-0256-47B3-9864-137D6D1FD449}6'
WITH MOVE 'Test' TO 'C:\Program Files (x86)\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\Tes.mdf',
MOVE 'Test_log' TO 'C:\Program Files (x86)\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\Tes.ldf'

上面的恢复命令对于新数据库工作正常,但很少有旧数据库显示类似的错误

The file 'C:\Program Files (x86)\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\db1.mdf' cannot be overwritten. It is being used by database 'windb'. Msg 3156, Level 16, State 4, Line 1 File 'windb' cannot be restored to 'C:\Program Files (x86)\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\db1.mdf'. Use WITH MOVE to identify a valid location for the file

我发现只有具有多个 ndf 文件的数据库才会出现此问题..

这个问题有什么解决办法吗?

最佳答案

尝试通过恢复数据库向导恢复数据库。为此,在对象资源管理器中,右键单击数据库 -> 选择恢复数据库...。在出现的窗口中,设置目标的必要详细信息。在左侧 Pane 中,选择选项文件,具体取决于您拥有的 SSMS 版本。

在显示的表格中,找到恢复为列。在每一行中,给出一个新的文件名,而不是显示的名称。例如,在您的情况下,它可能会将文件名显示为类似于 <Folder Path>\DATA\Tes.mdf 的内容。和<Folder Path>\DATA\Tes.ldf 。提供除 Tes 以外的其他名称。 (DATA 文件夹中尚不存在的名称)。

注意:文件名与数据库名称没有任何关系,但稍后可以轻松引用以提供有意义的名称,以防您必须备份或查找文件.

关于SQL-Server:无法覆盖。正在被数据库使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48005689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com