昨天和朋友在網上談到SQL語句的應用,我朋友的遠程服務器出現了無法連接的現象,問題的原因是遠程服務器到達了最大連接數,為了實現遠程重新啟動,從而想到了用SQL語句命令實現這個功能,但是具體的命令格式給忘記了,找了點資料,把方法寫在下面,
希望可以給大家一些幫助吧,呵呵
首先在本地計算機--創建重啟腳本
復制代碼 代碼如下:
declare @o int,@f int,@t int,@ret int
exec sp_oacreate 'scripting.filesystemobject',@o out
exec sp_oamethod @o,'createtextfile',@f out,'c:\restart.bat',1
exec @ret=sp_oamethod @f,'writeline',NULL,'net stop mssqlserver'
exec @ret=sp_oamethod @f,'writeline',NULL,'net start mssqlserver'
通過SQL數據庫連接到遠程服務器--執行重啟腳本
exec master..xp_cmdshell 'c:\restart.bat'
/*
如果重新啟動計算機,請確認mssqlserver賬戶在管理員賬戶下運行(非本地系統賬戶)
*/
exec master..xp_cmdshell 'shutdown /r /f'
這里有個前提,那就是需要用到服務器上的一個組件,xp_cmdshell這個組件,但是一般的服務器,
這個組件都是被禁用的。所以要先起用組件才可以應用上面的方法。
您可能感興趣的文章:- 利用php+mysql來做一個功能強大的在線計算器
- 在php和MySql中計算時間差的方法
- mysql 字符串長度計算實現代碼(gb2312+utf8)
- SQL2005CLR函數擴展-深入環比計算的詳解
- SQLSERVER 根據地圖經緯度計算距離差示例
- 用sql實現18位身份證校驗代碼分享 身份證校驗位計算
- SQL計算字符串中最大的遞增子序列的方法
- SQL語句計算兩個日期之間有多少個工作日的方法
- 如何計算多個訂單的核銷金額