PowerShell应用一例:启动SQL Server服务

前言:相信很多人为了节省资源,默认都会把SQL SERVER服务停掉,然后在需要使用的时候再通过SQL SERVER管理工具或Windows服务管理界面进行启动,使用此两种方式多了,就会觉得麻烦。有没有方便一点的方式呢?下面就介绍一种脚步启动的方式:采用PowerShell脚本启动

引言:Windows PowerShell 是一种新的命令行外壳和脚本语言,用于进行系统管理和自动化任务,它建立在 .NET Framework 的基础上,可使 IT 专业人员和开发人员控制和自动完成Windows 和应用程序的管理。更为强大之处在于它可以调用.NET Framework中的类库,可以与COM、ADO、XML等交互。在本文中让我们一起来体会一下回归Dos操作的快感,进入强大无比的Windows PowerShell世界。

                                                          --Terrylee之回归Dos操作的快感,进入PowerShell世界
使用PowerShell的前提:
1、至少安装了.NET Framework 2.0
2、至少安装了Windows PowerShell 1.0

直接贴代码吧

Code
$Status = Get-Service MSSQLSERVER 
$OrginStatus = $Status | findstr "MSSQLSERVER"
$Status = $Status | findstr "Stopped"
Write
-Host "SQL Server服务原始状态为:" $OrginStatus
if([String]::IsNullOrEmpty($Status))
{
    Write
-Host "服务已经启动或禁止"
}
elseif($Status.IndexOf("Stopped"-eq 0)
{
    Write
-Host "开始启动MSSQLSERVER服务"
    Start
-Service MSSQLSERVER
    Write
-Host "完成MSSQLSERVER服务启动"
}
[System.Threading.Thread]
::Sleep(3000)  #休眠三秒,方便查看脚本执行情况

将上面代码保存成StartSqlServer.ps1,放到c:\

如果想像批处理脚本(。bat)那样双击执行,那还得做以下两个步骤:
1、关联.ps1后缀的文件让PowerShell执行,例如可以这样:

    打开cmd,执行assoc得到ps1文件的相关信息,知道.ps1是指向于Microsoft.PowerShellScript.1

    好了,这样只需要用ftype修改一下Microsoft.PowerShellScript.1的值就可以了,从powershell /? 可以得到相关信息,于是执行了下面的命令:

    ftype Microsoft.PowerShellScript.1="C:\WINDOWS\system32\windowspowershell\v1.0\powershell.exe" -command "& {%1}"

    OK,现在直接可以双击打开ps1文件,如果不行的话,尝试多执行下面的命令:

    assoc .ps1=Microsoft.PowerShellScript.1

2、设置PowerShell的执行策略

     在PowerShell控制台环境中执行:Set-ExecutionPolicy Unrestricted(千万别再服务器上设置成此级别,有安全风险)

ok,让我们双击执行StartSqlServer.ps1,将会看到如下结果:


小结:PowerShell功能强大,本文的应用只是冰山一角。本文只是作者学习PowerShell的一个练习,如有不对之处,欢迎各位拍砖!

参考文章:
回归Dos操作的快感,进入PowerShell世界
直接双击运行PowerShell的脚本文件.ps1(更新)
Windows PowerShell 一次编写一行脚本


根据网友的评论又学了一招,通过命令行方式启动SQL Server,如在命令行中输入
C:\>net start "MSSQLSERVER"
SQL Server (MSSQLSERVER) 服务正在启动 ..
SQL Server (MSSQLSERVER) 服务已经启动成功。

当然,将命令保存net start "MSSQLSERVER"成。bat文件,也可以双击执行启动SQL Server

posted @ 2009-03-07 17:29  stu_acer  阅读(2491)  评论(9编辑  收藏