MSsql 2008 sql代理任务输出到网络驱动器

MSsql 2008 sql代理任务输出到网络驱动器

我正在尝试让 SQL 代理作业(任务)运行我的查询,然后将输出文件放入网络驱动器。当我选择输出文件时,列出的唯一驱动器是本地驱动器。我对作业和 MSSQL 还不熟悉,但对 MySQL 很了解。

如果我选择本地磁盘,任务就顺利完成。如果我手动将映射驱动器的驱动器号放入输出文件字段,则什么也不会发生。

谢谢

答案1

在 Windows 中,驱动器映射基于用户帐户。这意味着 SQL Agent 运行的用户帐户无法看到其他用户(如用于管理服务器的帐户)创建的驱动器映射。

一种解决方法是使用 UNC 路径名指向共享。只需在作业步骤属性对话框中的“输出文件:”字段中输入您喜欢的任何文件路径即可。您可能想要想出某种命名约定,以使服务器名称、作业名称和步骤保持一致。例如:\superbigfileserver\sqllogshare\sqlagentlogs\dbinstancename\a_sql_job_name.step_number.txt

当然,用于SQL Agent的帐户应该具有足够的权限来访问相关的共享,路径和文件。

如果您担心文件服务器的名称会发生​​变化,请通过 DNS 设置 CNAME 并使用该名称代替“真实”文件服务器名称。

相关内容