设为首页 收藏本站
查看: 1375|回复: 0

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

[复制链接]

尚未签到

发表于 2015-7-3 03:57:13 | 显示全部楼层 |阅读模式
  前言:相信很多人为了节省资源,默认都会把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
  直接贴代码吧

DSC0000.gif DSC0001.gif 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,将会看到如下结果:
DSC0002.jpg
小结: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

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-82630-1-1.html 上篇帖子: PowerShell 2.0 实践(十四)管理 SQL Server 2008 R2(2) 下篇帖子: 编写shell脚本统计某个时间段内本机的流量
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表