现在的位置: 首页 > 综合 > 正文

关于SQL server 调用 xp_cmdshell 的问题

2013年10月18日 ⁄ 综合 ⁄ 共 510字 ⁄ 字号 评论关闭

关于SQL server 调用 xp_cmdshell 的问题

最近看了一些关于存储过程的资料,有一个使用xp_cmdshell 的例子,贴出来,以备以后深入研究!

感觉存储过程是非常强大的!在使用xp_cmdshell之前要对xp_cmdshell进行配置,应为SQL 默认是关闭xp_cmdshell的。

这个也很好理解,xp_cmdshell相当于系统中的一个后门,如果随便开启胡乱使用,系统的安全性将变得非常脆弱。

use master
go
Exec xp_cmdshell 'mkdir d:\bank',no_output
if Exists (SELECT * FROM SYSDATABASES WHERE name= 'bankDB' )
drop database bankDB
go
create database bankDB

SQL Server 阻止了对组件 'xp_cmdshell' 的 过程 'sys.xp_cmdshell' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。

系统管理员可以通过使用 sp_configure 启用 'xp_cmdshell'。有关启用 'xp_cmdshell' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。

抱歉!评论已关闭.