我可以编写还原过程的脚本,但是我之前已经看到过这个问题,我我不确定是什么原因导致无法显示.bak。
#1 楼
今天我们遇到了同样的问题。事实证明,这是一个权限问题,如其他一些答案所示。区别在于,我们需要添加的帐户是NT SERVICE\MSSQLSERVER
。我通过将默认SQL Backup文件夹权限的权限与包含以下内容的文件夹进行比较,来确定该帐户:NT SERVICE\MSSQLSERVER
备份文件。
添加服务帐户并不像听起来那样简单。这对我有用。 (Server 2012 R2)
登录到服务器。 (必须在实际服务器上进行更改,而不是通过网络共享进行更改。)
将“位置”更改为本地服务器名称。
在名称框中键入q4312079q。 (不要单击“检查名称”)。
单击“确定”。然后,您将看到匹配的服务帐户的列表。选择“ MSSQLSERVER”,然后单击“确定”接受选择。
您应该看到安全设置中列出的服务帐户,并且可以相应地调整权限。
添加权限后(我添加了“完全控制”,以匹配默认的SQL Backup文件夹。)并重新启动SQL Server管理控制台,便能够选择并还原我的备份文件。
评论
superuser.com/questions/248315/…告诉我们如何在计算机上列出用户帐户。对于任何名为s的服务,都有一个名为NT Service \ s的虚拟帐户,即使该服务未在该帐户下运行。
–塔希尔·哈桑(Tahir Hassan)
16-3-14在15:25
我必须添加的帐户是NT Service \ MSSQL $ SQLSERVER2014,可能是因为我将实例命名为SQLSERVER2014
– thinkOfaNumber
19年5月10日在2:04
我通过添加Computername \ Users的权限来解决它
–奥拉·埃尔多(OlaEldøy)
20-09-28在9:58
#2 楼
我今天知道了。我关闭了文件共享,建立索引并清除了所有打开的会话(登录并复制备份的人),但是问题并没有消失。
去了到Windows资源管理器,将备份复制到另一个文件夹,然后通过Management Studio浏览到该文件夹。我可以在其中看到它。
删除原始文件夹并重新创建,然后再次复制内容并浏览到
.bak
文件,它又恢复了正常。希望对别人有帮助。
评论
确实有帮助! :)
– Peter PitLock
2014-03-10 8:02
#3 楼
我几次遇到这个问题。问题不在于SQL Server,而在于文件夹的Windows许可。您必须向复制.bak文件的文件夹中添加适当的权限(我认为是System Network
角色)。较简单的解决方案是将文件移动到Program Files中的默认备份文件夹。它具有所有必要的许可。对于SQL Server 2012,它是
D:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup
评论
这是一个很好的解决方案,因为它并没有为了恢复一个文件而在计算机中打开潜在的安全漏洞。
–结识新用户
18-10-24在22:25
很好,不需要政策和东西
–马林
19年7月12日在15:04
这是一个适当的答案。表现出色,尤其是在Windows10上
– Bluesight
20 Mar 18 '20在8:13
#4 楼
今天我也遇到了同样的问题。我获得了要还原的备份文件,但浏览时对我不可见。但是我能够使用SQL Server management Studio
在还原向导中访问文件系统中的文件。 花了一些钱后,我发现这是权限问题。 SQL Server服务正在使用
Network Service
运行,但是Network Service
帐户没有访问该文件夹的权限。将权限授予Network Service
之后。可见备份文件可以还原。有关详细信息,请通过Blog查看。
#5 楼
如果可以在Windows资源管理器中找到它,则应编写RESTORE DATABASE
命令,而不要依赖笨拙的GUI为您查找它。谁知道那里正在执行什么代码,以及为什么它可能找不到文件-抱歉,我只有一种解决方法,而不是解决方案。还要确保文件实际上是某物。而不是something.bak.txt(Windows可能“有帮助”地向您隐藏了扩展名。我讨厌这种默认行为。)
评论
我将为还原编写一个脚本,我只想知道是什么原因造成的。绝对是.bak,而不是.bak.txt或其他任何内容。因此,您能够浏览知道文件所在的文件夹,而该文件夹没有出现吗?还是无法浏览到该文件夹?
我可以浏览到该文件夹,只是看不到任何.bak文件。我已经检查了与我一起运行SSMS的用户的权限,他们是本地管理员,并且该文件未标记为“隐藏”或任何其他内容。
您可以在某处张贴屏幕快照,以显示Windows资源管理器的文件夹视图和SSMS的视图吗?还要在问题中解释您要用于此步骤的过程。
(还请注意,SQL Server服务帐户也必须具有权限,而不仅仅是SSMS用户。尽管这样做不应该阻止.bak文件在对它们进行任何操作之前显示在列表中。)