昨天和朋友在网上谈到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这个组件,但是一般的服务器,
这个组件都是被禁用的。所以要先起用组件才可以应用上面的方法。