小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

xp_cmdshell

 何必清楚 2012-01-12
Transact-SQL 參考

xp_cmdshell

以操作系統(tǒng)命令行解釋器的方式執(zhí)行給定的命令字符串,并以文本行方式返回任何輸出。授予非管理用戶(hù)執(zhí)行 xp_cmdshell 的權(quán)限。

說(shuō)明  在 Microsoft? Windows? 95 或 Microsoft Windows 98 操作系統(tǒng)中執(zhí)行 xp_cmdshell 時(shí),將不把 xp_cmdshell 的返回代碼設(shè)置為喚醒調(diào)用的可執(zhí)行文件的進(jìn)程退出代碼。返回代碼始終為 0。

語(yǔ)法

xp_cmdshell {'command_string'} [, no_output]

參數(shù)

'command_string'

是在操作系統(tǒng)命令行解釋器上執(zhí)行的命令字符串。command_string 的數(shù)據(jù)類(lèi)型為 varchar(255)nvarchar(4000),沒(méi)有默認(rèn)值。command_string 不能包含一對(duì)以上的雙引號(hào)。如果由 command_string 引用的文件路徑或程序名稱(chēng)中有空格,則需要使用一對(duì)引號(hào)。如果使用嵌入空格不方便,可考慮使用 FAT 8.3 文件名作為解決辦法。

no_output

是可選參數(shù),表示執(zhí)行給定的 command_string,但不向客戶(hù)端返回任何輸出。

返回代碼值

0(成功)或 1(失?。?/p>

結(jié)果集

執(zhí)行下列 xp_cmdshell 語(yǔ)句將返回當(dāng)前目錄的目錄列表。

xp_cmdshell 'dir *.exe'

行以 nvarchar(255) 列的形式返回。

執(zhí)行下列 xp_cmdshell 語(yǔ)句將返回隨后的結(jié)果集:

xp_cmdshell 'dir *.exe', NO_OUTPUT

下面是結(jié)果:

The command(s) completed successfully.
注釋

xp_cmdshell 以同步方式操作。在命令行解釋器命令執(zhí)行完畢之前,不會(huì)返回控制。

當(dāng)授予用戶(hù)執(zhí)行權(quán)限時(shí),用戶(hù)能在 Microsoft Windows NT? 命令行解釋器上執(zhí)行運(yùn)行 Microsoft SQL Server? 的帳戶(hù)有權(quán)執(zhí)行的任何操作系統(tǒng)命令。

默認(rèn)情況下,只有 sysadmin 固定服務(wù)器角色的成員才能執(zhí)行此擴(kuò)展存儲(chǔ)過(guò)程。但是,也可以授予其他用戶(hù)執(zhí)行此存儲(chǔ)過(guò)程的權(quán)限。

當(dāng)作為 sysadmin 固定服務(wù)器角色成員的用戶(hù)喚醒調(diào)用 xp_cmdshell 時(shí),將在運(yùn)行 SQL Server 服務(wù)的安全上下文中執(zhí)行 xp_cmdshell。當(dāng)用戶(hù)不是 sysadmin 組的成員時(shí),xp_cmdshell 將模擬使用 xp_sqlagent_proxy_account 指定的 SQL Server 代理程序的代理帳戶(hù)。如果代理帳戶(hù)不能用,則 xp_cmdshell 將失敗。這只是針對(duì)于 Microsoft? Windows NT? 4.0 和 Windows 2000。在 Windows 9.x 上,沒(méi)有模擬,且 xp_cmdshell 始終在啟動(dòng) SQL Server 的 Windows 9.x 用戶(hù)的安全上下文下執(zhí)行。

說(shuō)明  在早期版本中,獲得 xp_cmdshell 執(zhí)行權(quán)限的用戶(hù)在 MSSQLServer 服務(wù)的用戶(hù)帳戶(hù)上下文中運(yùn)行命令??梢酝ㄟ^(guò)配置選項(xiàng)配置 SQL Server,以便對(duì) SQL Server 無(wú) sa 訪(fǎng)問(wèn)權(quán)限的用戶(hù)能夠在 SQLExecutiveCmdExec Windows NT 帳戶(hù)的上下文中運(yùn)行 xp_cmdshell。在 SQL Server 7.0 中,該帳戶(hù)稱(chēng)為 SQLAgentCmdExec?,F(xiàn)在,不是 sysadmin 固定服務(wù)器角色成員的用戶(hù)將在該帳戶(hù)上下文中運(yùn)行命令,而無(wú)需再進(jìn)行配置更改。

權(quán)限

xp_deletemail 的執(zhí)行權(quán)限默認(rèn)授予 sysadmin 固定服務(wù)器角色的成員,但可以授予其他用戶(hù)。

重要  如果為 MSSQLServer 服務(wù)選用的 Windows NT 帳戶(hù)不是本地管理員組的成員,則非 sysadmin 固定服務(wù)器角色成員的用戶(hù)將無(wú)法執(zhí)行 xp_cmdshell。

示例
A. 返回可執(zhí)行文件列表

下例顯示執(zhí)行目錄命令的 xp_cmdshell 擴(kuò)展存儲(chǔ)過(guò)程。

EXEC master..xp_cmdshell 'dir *.exe'
B. 使用 Windows NT net 命令

下例顯示 xp_cmdshell 在存儲(chǔ)過(guò)程中的使用。下例先用 net send 通知用戶(hù) SQL Server 即將關(guān)閉,然后用 net pause 暫停服務(wù)器,最后用 net stop 關(guān)閉服務(wù)器。

CREATE PROC shutdown10
AS
EXEC xp_cmdshell 'net send /domain:SQL_USERS ''SQL Server shutting down 
   in 10 minutes. No more connections allowed.', no_output
EXEC xp_cmdshell 'net pause sqlserver'
WAITFOR DELAY '00:05:00'
EXEC xp_cmdshell 'net send /domain: SQL_USERS ''SQL Server shutting down 
   in 5 minutes.', no_output
WAITFOR DELAY '00:04:00'
EXEC xp_cmdshell 'net send /domain:SQL_USERS ''SQL Server shutting down 
   in 1 minute. Log off now.', no_output
WAITFOR DELAY '00:01:00'
EXEC xp_cmdshell 'net stop sqlserver', no_output
C. 不返回輸出

下例使用 xp_cmdshell 執(zhí)行命令字符串,且不向客戶(hù)端返回輸出。

USE master
EXEC xp_cmdshell 'copy c:\sqldumps\pubs.dmp \\server2\backups\sqldumps', 
   NO_OUTPUT
D. 使用返回狀態(tài)

在下例中,xp_cmdshell 擴(kuò)展存儲(chǔ)過(guò)程也給出了返回狀態(tài)。返回代碼值存儲(chǔ)在變量 @result 中。

DECLARE @result int
EXEC @result = xp_cmdshell 'dir *.exe'
IF (@result = 0)
   PRINT 'Success'
ELSE
   PRINT 'Failure'
E. 將變量?jī)?nèi)容寫(xiě)入文件

下例將當(dāng)前目錄內(nèi)容寫(xiě)入當(dāng)前服務(wù)器目錄下名為 dir_out.txt 的文件中。

DECLARE @cmd sysname, @var sysname
SET @var = 'dir /p'
SET @cmd = 'echo ' + @var + ' > dir_out.txt'
EXEC master..xp_cmdshell @cmd

請(qǐng)參見(jiàn)

CREATE PROCEDURE

EXECUTE

創(chuàng)建安全帳戶(hù)

系統(tǒng)存儲(chǔ)過(guò)程(常規(guī)擴(kuò)展過(guò)程)

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多