【问题标题】:SQL Management Studio show network drivesSQL Management Studio 显示网络驱动器
【发布时间】:2020-03-23 14:53:10
【问题描述】:

我正在使用 Microsoft SQL Management Studio 将数据集导入数据库。我需要能够将所有日志文件指向网络驱动器,但是当我通过 SQL Management Studio 浏览时,我看不到任何网络驱动器。有没有办法通过 SQL 管理启用网络驱动器视图。非常感谢

【问题讨论】:

  • 您知道不能将日志文件放在网络驱动器上是有充分理由的。您更有可能无法访问网络驱动器,当这种情况发生时,您的数据库将停止。

标签: sql-server ssms


【解决方案1】:

它不依赖于 ssms。这是因为您的数据库引擎作为“NT Service\MSSQLSERVER”运行,因此如果您想使用它,必须为该用户映射您的网络驱动器。另一方面,您可以使用完整的网络位置,例如“\\MyServer\MyResource\MyBackup.bak”。

【讨论】:

  • 网络驱动器已映射。当我尝试选择路径时,它只显示 c: 驱动器,并且需要能够看到映射的网络驱动器。
  • 但它是为您的用户还是 DB Engine 用户映射的?
  • 有一些 trick 可以直接从 sql 脚本映射驱动器。
  • 你也可以看到dba stack上的线程
  • 映射到用户的账户。
【解决方案2】:

不确定我解决问题的建议......但我说,我希望它有所帮助。

您将使用 xp_cmdshell 命令。在此之前,您需要确保在您的 SQL 实例中启用了 xp_cmdshell 命令,因为默认情况下它是禁用的。使用sp_configure命令开启,如下图:

EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO

EXEC sp_configure 'xp_cmdshell',1
GO
RECONFIGURE
GO

现在使用 xp_cmdshell 命令为 SQL 定义共享驱动器,如下所示:

EXEC XP_CMDSHELL 'net use H: \\RemoteServerName\ShareName'

它现在应该被映射了。为了验证新驱动器,您可以使用以下命令显示该新映射驱动器中的所有文件:

EXEC XP_CMDSHELL 'Dir H:' 

让我们再次尝试使用 SQL Server Management Studio 浏览路径。正如我们在下面看到的,我们现在可以看到 H: 驱动器:

现在他的驱动器是可见的,您可以正常进行恢复过程等。

【讨论】:

  • 我确实按照上述说明进行操作,但仍然看不到网络驱动器。
  • @AA2018-2020 你的ssms版本是什么...具体怎么做,我用了这个方法,成功了。
  • @AA2018-2020 我在维护计划 SSMS 中使用此方法进行备份
  • @AA2018-2020 我认为你做不到。这个技巧可以让你做一些事情,比如传输备份。我只为备份这样做,我真的没想到能够把文件从你的磁盘上删除。但另一种解决方案是在网络上的另一个操作系统上安装引擎 sql(如远程连接)。然后通过 ip address 从 vm 连接到 ssms。用于管理数据库...Engine 在 SQL 中具有的功能会影响 LDF 和 MDF 对存储的管理,因此无论它们在哪里都应该有 sql -engine。
猜你喜欢
  • 1970-01-01
  • 2015-10-23
  • 2018-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多