AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 20430
Accepted
Nitesh Kumar
Nitesh Kumar
Asked: 2012-07-06 01:12:06 +0800 CST2012-07-06 01:12:06 +0800 CST 2012-07-06 01:12:06 +0800 CST

如何使用 sql server 作业在远程位置传输文件?

  • 772

我配置了一个作业,它在远程位置传输文件。
我的命令在命令提示符下运行得非常好,但是当我在 sql server 作业中配置它时,它会导致登录失败,未知用户名或密码错误。
我无法找出未传输此文件的确切原因。

如果我的代码中有错误,那么它应该在命令提示符下给出相同的错误。谁能帮我理解为什么我会收到错误?

sql-server sqlcmd
  • 4 4 个回答
  • 3862 Views

4 个回答

  • Voted
  1. Diego
    2012-07-06T05:17:22+08:002012-07-06T05:17:22+08:00

    这可能是因为尝试移动文件的用户是运行作业的用户(可能是配置 SQL Server 代理运行的用户)。尝试在您正在从中读取文件的文件夹上授予该用户读取权限,并在您正在写入文件的文件夹上写入权限。

    • 2
  2. NITESH KUMAR
    2012-07-06T21:22:43+08:002012-07-06T21:22:43+08:00

    问题已解决。由于远程位置文件夹是共享的,并且每个人都可以访问。我的命令在命令提示符下运行良好,甚至任何用户都能够在该位置创建自己的文件,并且还能够从该位置删除文件。

    该问题与用户有关。我的工作由servername\administrator执行,并且 由于发生密码错误错误而更改了远程位置管理员密码。我告诉我的 IT 团队这个问题,他们将服务器密码重置为旧密码,我的工作开始正常工作。

    问题解决了。

    我只是想知道我的 sql 作业如何在我浏览我的作业脚本时验证服务器登录,但发现没有任何关于身份验证的帮助。

    谁能给我解释一下。

    谢谢

    尼特什·库马尔

    • 2
  3. Best Answer
    SeanC
    2012-07-06T05:13:35+08:002012-07-06T05:13:35+08:00

    从命令行运行的批处理文件失败的主要原因是%迹象。

    在命令行上,需要一个 % ,所以for %a in (*.exe) do echo %a工作正常,但如果你想在批处理文件中使用相同的命令,你必须加倍 % 符号,这使得该命令现在for %%a in (*.exe) do echo %%a

    这仅适用于您自己计算的那些 - 使用%TEMP%不会改变的变量。

    • 1
  4. BlackStar
    2016-08-12T10:02:54+08:002016-08-12T10:02:54+08:00

    这很有趣,因为所有权限都一次又一次地重叠。

    让我解释,

    您的 Sql 作业作为您连接到服务器的不同用户运行(在某些情况下它们是相同的,但这是最好的情况)。您可以通过在 Sql Server 编辑器上运行此命令来检查这一点(也启用 xp_cmdshell):

    xp_cmdshell 'whoami'
    
    SERVERNAME\SqlUser
    

    并将其与控制台结果(以 JhonDoe 登录)进行比较:

    c:\Users\JhonDoe> whoami
    SERVERNAME\JhonDoe
    

    这通常采用两种结果不同的情况,因此您可能会猜测脚本正在以不同的用户身份执行,因此该用户可能具有不同的权限。

    然后,您需要了解每当您尝试连接到共享文件夹时。除非您与共享文件夹的所有者是同一用户,否则您将被要求输入用户名和密码。但是,这可能会让您产生误解。

    windows 真正做的是尝试使用您登录的相同凭据连接到共享文件夹:

    • 您已在名为 PC1 的计算机上以 JhonDoe 的身份使用密码 123456 登录,因此您的用户如下所示:

      c:\Users\JhonDoe> whoami
      PC1\JhonDoe
      
    • 共享文件夹属于 JhonDoe,密码为 123456(此用户使用此密码创建了共享文件夹),托管共享文件夹的计算机名为 PC2 显示如下:

      c:\Users\JhonDoe> whoami
      PC2\JhonDoe
      

    当 Windows 尝试连接到共享文件夹时,它使用 PC1 登录 (JhonDoe 123456),因为这是您的本地登录,然后它与远程登录信息进行比较,并与 PC2 登录 (JhonDoe 123456) 完全匹配。就在那时,它使您无需任何密码提示即可访问共享文件夹。

    但是,当它面临这种情况时:

    • PC1 (JhonDoe-12345)

      c:\Users\JhonDoe> whoami
      PC1\JhonDoe
      
    • PC2 (JhonDoe-123456)

      c:\Users\JhonDoe> whoami
      PC2\JhonDoe
      

    凭据不匹配,因为它们具有不同的密码。然后它失败了,因为他们实际上是不同的用户。

    • 0

相关问题

  • SQL Server - 使用聚集索引时如何存储数据页

  • 我需要为每种类型的查询使用单独的索引,还是一个多列索引可以工作?

  • 什么时候应该使用唯一约束而不是唯一索引?

  • 死锁的主要原因是什么,可以预防吗?

  • 如何确定是否需要或需要索引

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何查看 Oracle 中的数据库列表?

    • 8 个回答
  • Marko Smith

    mysql innodb_buffer_pool_size 应该有多大?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    从 .frm 和 .ibd 文件恢复表?

    • 10 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    如何选择每组的第一行?

    • 6 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    pedrosanta 使用 psql 列出数据库权限 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST
  • Martin Hope
    bernd_k 什么时候应该使用唯一约束而不是唯一索引? 2011-01-05 02:32:27 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve