请问,为什么用xp_cmdshell 执行一个批处理不执行?
因为以前用好压,压缩程序文件,利用window的计划任务,每天自动备份到 远程的服务器上。后来windows计划任务出现了故障,就想到了用sql server的作业调度来做。
结果数据库的异地备份批处理,作业调度成功了。但是程序备份的批处理,不成功啊。手工双击这个批处理文件,是可以执行成功的,批处理文件本身没有问题。
作业的脚本如下:
EXECUTE master..xp_cmdshell 'd:\备份\progbak.bat'
看作业的日志,执行成功的,并没有错误提示,但是就是没有copy过去的。
.bat里面的内容如下:
d:\备份\文件1_BussAndClient.lnk
d:\备份\文件2_BussAndClient.lnk
d:\备份\文件3_BussAndClient.lnk
d:\备份\文件4_BussAndClient.lnk
即使在作业中我这样写:
EXECUTE master..xp_cmdshell 'd:\备份\文件1_BussAndClient.lnk'
也是无法执行压缩远程备份的。
谢谢大家,请求大家的帮助,不知道这个是什么原因。同样类似的写法,数据库的异地备份就是可以的。
结果数据库的异地备份批处理,作业调度成功了。但是程序备份的批处理,不成功啊。手工双击这个批处理文件,是可以执行成功的,批处理文件本身没有问题。
作业的脚本如下:
EXECUTE master..xp_cmdshell 'd:\备份\progbak.bat'
看作业的日志,执行成功的,并没有错误提示,但是就是没有copy过去的。
.bat里面的内容如下:
d:\备份\文件1_BussAndClient.lnk
d:\备份\文件2_BussAndClient.lnk
d:\备份\文件3_BussAndClient.lnk
d:\备份\文件4_BussAndClient.lnk
即使在作业中我这样写:
EXECUTE master..xp_cmdshell 'd:\备份\文件1_BussAndClient.lnk'
也是无法执行压缩远程备份的。
谢谢大家,请求大家的帮助,不知道这个是什么原因。同样类似的写法,数据库的异地备份就是可以的。
...全文
相关推荐
SQL Server阻止了对组件xp_cmdshell过程的解决方案.docx
【SQL Server中的xp_cmdshell扩展存储过程】在SQL Server中,`xp_cmdshell`是一个非常特殊的扩展存储过程,它允许数据库管理员(DBA)在服务器级别执行操作系统命令。
MSSQL注入利用xp_cmdshell执行命令(细)
与MySQL不同,MSSQL提供了,它允许我们执行系统命令在xp_cmdshell中,大多数时候我们都有特权使用cmd,最重要的是,使用powershell。现在,我们将在powershell中使用curl将命令输出发送到我们的受控服务器。
SQL入侵恢复xp_cmdshell方法总结
### SQL入侵恢复xp_cmdshell方法总结#### 一、引言在SQL Server环境中,`xp_cmdshell`是一个强大的扩展存储过程,它允许用户通过SQL Server执行操作系统命令
xp_cmdshell开启与关闭
这样,管理员可以在SQL Server中执行操作系统命令,而不需要离开SQL Server环境。xp_cmdshell的开启与关闭是非常重要的。
SQL 不常用的一些命令sp_OACreate,xp_cmdshell,sp_makewebtask
"这篇文章主要介绍了SQL中不常用的几个命令,包括sp_OACreate、xp_cmdshell和sp_makewebtask。这些命令在特定场景下非常有用,但并不在日常SQL操作中频繁出现。"


