高手请进,master..xp_cmdshell 使用问题!

wangweisilu 2008-10-16 01:06:42
exec master..xp_cmdshell 'net use K: \\192.168.3.4\E$ user /user:user'执行后报错,发生系统错误 1312。指定的登录会话不存在。可能已被终止。
'net use K: \\192.168.3.4\E$ user /user:user'在命令行执行没有错误,不知道在master..xp_cmdshell中用法是什么,请高手解答下,谢谢!
我在CSDN上也看到过过一个帖子和我出的问题一样,但没有给出正确的解答,希望高手能给个正解。
最后就是谁有数据网络备份的源码(自己使用成功的)发上来,需要配置什么的最好带上说明哈!我在线等答案!
...全文
874 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
就是just4 2011-01-06
  • 打赏
  • 举报
回复
"exec master..xp_cmdshell 'net use K: \\192.168.3.4\E$ user /user:user'执行后报错,发生系统错误 1312。指定的登录会话不存在。可能已被终止。"

这一句改成如下形式试下:
[code=BatchFile]net use \\192.168.3.4 /user:username password&&net use k: \\192.168.3.4\e$[/code]
就是just4 2011-01-06
  • 打赏
  • 举报
回复
--测试代码
master..xp_cmdshell 'net user user password'
GO
master..xp_cmdshell 'echo.>c:\test\test.txt'
GO
master..xp_cmdshell 'net use \\127.0.0.1 /user:user password&&dir \\127.0.0.1\test\test.txt'
GO
master..xp_cmdshell 'del \\127.0.0.1\test\test.txt /f /q'
GO
AIGPTchina 2009-02-24
  • 打赏
  • 举报
回复
没有一个人回答正确.
wangweisilu 2008-10-16
  • 打赏
  • 举报
回复
告诉大家个好消息16楼的兄弟说的是正解,我下面试试看能不能队映射在本地的盘符写数据,谢谢所有的XD,哈哈
伴老思源 2008-10-16
  • 打赏
  • 举报
回复
一般服务器上xp_cmdshell都会被重命名,或删除~
linguojin11 2008-10-16
  • 打赏
  • 举报
回复
exec master..xp_cmdshell 'net use j: \\192.168.0.10\l$ "huang" /user:192.168.0.10\administrator'

这样测试通过 ,关键在于用户名前面加上主机
wangweisilu 2008-10-16
  • 打赏
  • 举报
回复
改完SQL server服务启动不了还需要设置什么啊?
wangweisilu 2008-10-16
  • 打赏
  • 举报
回复
我去试试看呢,谢谢,楼上的XD
水族杰纶 2008-10-16
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 wangweisilu 的回复:]
密码帐号肯定正确的,net use Z:\\192.168.3.4\d$ sy841218 /user:sunny在CMD下是执行成功的
还有就是10楼XD的方法我在mssqlserver服务属性的登陆那栏里没有找到网络用户或者域用户选项啊
[/Quote]
wangweisilu 2008-10-16
  • 打赏
  • 举报
回复
密码帐号肯定正确的,net use Z:\\192.168.3.4\d$ sy841218 /user:sunny在CMD下是执行成功的
还有就是10楼XD的方法我在mssqlserver服务属性的登陆那栏里没有找到网络用户或者域用户选项啊
水族杰纶 2008-10-16
  • 打赏
  • 举报
回复
--密碼,帳號確定正確?
--還有帳號的權限足夠不?
exec master..xp_cmdshell 'net use Z:\\192.168.3.4\d$ sy841218 /user:sunny'
等不到来世 2008-10-16
  • 打赏
  • 举报
回复
解决方法:
控制面板--管理工具--服务--在sql server(mssqlserver)上右键--属性--登录

不用本地系统帐号登录,改用网络用户登录,比如域用户。


可能的原因:
用local system登录时,在本地计算机上拥有几乎无限的权限。
在 Local System 账号环境运行的进程没有与任何已登录的用户账号相联系,
没有用于验证的信任凭证(用户名、域和密码),而该信任凭证(credential)用于网
络上其他计算机的验证,这样以 Local System 账号运行的进程就不能访问网络资源了。
wangweisilu 2008-10-16
  • 打赏
  • 举报
回复
在线等待!
wangweisilu 2008-10-16
  • 打赏
  • 举报
回复
走过路过的都来支支招啊,很想弄明白怎么做!!
NewDBA 2008-10-16
  • 打赏
  • 举报
回复
那是不是需要网络访问的话,不能用local system启动账号,用domain id或者local user才能map远程路经?
butchroller 2008-10-16
  • 打赏
  • 举报
回复
你的SQL Server服务的启动帐号是"Local System"吧?这个帐户的网络访问是受限的。
wangweisilu 2008-10-16
  • 打赏
  • 举报
回复
declare @strsql varchar(1000)
declare @strdirname varchar(50)
declare @strcmd varchar(50)
declare @strsend varchar(1000)
declare @strdate varchar(50)
exec master..xp_cmdshell 'net use \\192.168.3.4\d$ sy841218 /user:sunny'
set @strsql='backup database new_his to disk=''\\192.168.3.4\d$\serverd\'
set @strdirname=replace(substring(convert(varchar(20),getdate(),120),1,10),'-','')+'12'
set @strcmd='md \\192.168.3.4\d$\serverd\'
set @strsend=@strcmd+@strdirname
exec master..xp_cmdshell @strsend
set @strdate=@strsql+@strdirname+'\new_hisbackup.dat'' with init,nounload,noskip,noformat'
exec (@strdate)
以上是我在网上搜索到的一段代码,exec master..xp_cmdshell 'net use \\192.168.3.4\d$ sy841218 /user:sunny'单独执行就出问题,报发生系统错误 1312。指定的登录会话不存在。可能已被终止。
希望楼上能帮我改改,我多学习学习下,谢谢楼上的XD!
水族杰纶 2008-10-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wangweisilu 的回复:]
我知道用法了,但是报错哇,该怎么解决呢,谢谢,一楼的XD
[/Quote]
把你代碼貼出來
wangweisilu 2008-10-16
  • 打赏
  • 举报
回复
我知道用法了,但是报错哇,该怎么解决呢,谢谢,一楼的XD
duanzhi1984 2008-10-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wufeng4552 的回复:]
SQL code/*--说明:
exec master..xp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator'

z:是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$是要映射的网络路径

xz\administrator
xz是远程的计算机名,
administrator是登陆的用户名
密码 面指定的administrator用户的密码
--*/
[/Quote]
0
加载更多回复(1)

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧