bat批处理开启和关闭Sql Server服务

装了sql server,总是会有一堆服务会开机启动。平时又用不着,于是去关闭掉,但是用的时候得开启。5、6个服务,相当麻烦,于是仔细查询了资料,编写了一个bat批处理sql server的服务。

在这过程中,发现网上的bat都得手动使用管理员权限运行,很麻烦,于是copy了一大段获取管理员权限的代码。这种样子运行就可以直接弹出管理员权限确认了。

bat如下:

title 服务管理小工具
@echo off  

:: BatchGotAdmin
:-------------------------------------  
REM  --> 检查管理员权限
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"  

REM --> If error flag set, we do not have admin.  
if '%errorlevel%' NEQ '0' (  
    echo 请求管理员权限...  
    goto UACPrompt  
) else ( goto gotAdmin )  

:UACPrompt  
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"  
    echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"  

    "%temp%\getadmin.vbs"  
    exit /B  

:gotAdmin  
    if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )  
    pushd "%CD%"  
    CD /D "%~dp0"  
:--------------------------------------

goto menu2008

::-------------------------------------

:menu2008
@echo.
@echo Sql Server2008服务管理
@echo 1.开启服务 2.关闭服务 3.退出
@echo off
set in=
set /p in=请输入:

if "%in%"=="1" (goto startSqlServer2008
) else (if "%in%"=="2" (goto stopSqlServer2008
    ) else (if "%in%"=="3" (exit
        ) else (@echo 输入错误... 
                goto menu2008
            )
    )
)
:startSqlServer2008
@echo.
@echo Sql server2008服务开始启动...... 
@echo off 
@sc start MSSQLServerADHelper100
@sc start MSSQLFDLauncher
@sc start MSSQLSERVER
@sc start MSSQLServerOLAPService
@sc start SQLBrowser
@sc start MsDtsServer100
@sc start ReportServer
@sc start SQLWriter
@sc start SQLSERVERAGENT
@echo off 
@echo 启动完毕! 
goto backAndExit

:stopSqlServer2008
@echo.
@echo Sql server2008服务开始停止...... 
@echo off 
@sc stop MSSQLServerADHelper100
@sc stop MSSQLFDLauncher
@sc stop MSSQLSERVER
@sc stop MSSQLServerOLAPService
@sc stop SQLBrowser
@sc stop MsDtsServer100
@sc stop ReportServer
@sc stop SQLWriter
@sc stop SQLSERVERAGENT
@echo off 
@echo 停止完毕!
goto backAndExit

:backAndExit
@echo.
@echo 1.返回上一级菜单 2.退出
set in=
set /p in=请输入:

if "%in%"=="1" (goto menu2008
) else (exit)
@echo.
::-------------------------------------
exit

复制,粘贴记事本,保存为xxx.bat文件就可以使用了。
在我的win7上已经运行通过。

说明:

bat没有else if ()这种东西。所以 只好用 else (if )代替。其实这是相当愁煞人的一件事。

bat的if else的格式很坑爹。if (xxx) else (xxx),if和else一定要跟一个空格,坚决不能和括号连在一起,缩进符貌似不管用,保险一点的做法前后统统加空格。

以上是sql server2008的批处理。对于其他版本的sql server来说,需要少许的改动。暂以sql server2008为例。需要右击“计算机”,选择”管理”,打开“服务”,查看所有Sql server字样的服务,记录其服务名称或显示名称。

使用

net start “显示名称” 开启服务,net stop “显示名称”关闭服务

或者使用

@sc start 服务名称 开启服务,@sc stop 服务名称,关闭服务

其中,显示名称可能带有中文,既然带有中文,自然也可能就带有日文韩文什么的,大概和系统语言环境有关。所以使用服务名称更强大,但是其实没什么区别,显示名称换了,估计这sql server也早就卸载掉再重装成其他鸟语了。

附上sql server其他版本与方式的bat:

sql server2008

————————————————————————————————

使用服务名启动/关闭服务bat:


开启SQL SERVER代码:

@echo.服务启动...... 
@echo off 
@sc start MSSQLServerADHelper100
@sc start MSSQLFDLauncher
@sc start MSSQLSERVER
@sc start MSSQLServerOLAPService
@sc start SQLBrowser
@sc start MsDtsServer100
@sc start ReportServer
@sc start SQLWriter
@sc start SQLSERVERAGENT
@echo off 
@echo.启动完毕! 
@pause


停止SQL SERVER代码:

@echo.服务停止...... 
@echo off
@sc stop MSSQLServerADHelper100
@sc stop MSSQLFDLauncher
@sc stop MSSQLSERVER
@sc stop MSSQLServerOLAPService
@sc stop SQLBrowser
@sc stop MsDtsServer100
@sc stop ReportServer
@sc stop SQLWriter
@sc stop SQLSERVERAGENT
@echo off
@echo.停止完毕! 
@pause

———————————————————————————————

使用显示名称开启/关闭主要服务bat:


开启代码:

@echo off
@ ECHO 启动SQL Server 2008 服务
pause
net start "SQL Server (MSSQLSERVER)"
net start "SQL Server Analysis Services (MSSQLSERVER)"
net start "SQL Server Integration Services 10.0"
net start "SQL Server Reporting Services (MSSQLSERVER)"
net start "SQL Server VSS Writer"
@ ECHO 启动完毕
pause
exit 


停止代码:

@echo off
@ ECHO 停止SQL Server 2008 R2服务
pause
net stop "SQL Server (MSSQLSERVER)"
net stop "SQL Server Analysis Services (MSSQLSERVER)"
net stop "SQL Full-text Filter Daemon Launcher (MSSQLSERVER)"
net stop "SQL Server Integration Services 10.0"
net stop "SQL Server Reporting Services (MSSQLSERVER)"
net stop "SQL Server VSS Writer"
@ ECHO 停止完毕
pause
exit


———————————————————————————————————

sql server2012

启动SQL SERVER.bat

@echo.服务启动...... 
@echo off 
@sc start MSSQLFDLauncher
@sc start MSSQLSERVER
@sc start MSSQLServerOLAPService 
@sc start SQLBrowser
@sc start SQL Server Distributed Replay Client
@sc start SQL Server Distributed Replay Controller
@sc start MsDtsServer110
@sc start ReportServer 
@sc start SQLWriter
@sc start SQLSERVERAGENT 

@echo off 
@echo.启动完毕! 
@pause


停止SQL SERVER.bat

@echo.服务启动...... 
@echo off 
@sc stop MSSQLFDLauncher
@sc stop MSSQLSERVER
@sc stop MSSQLServerOLAPService 
@sc stop SQLBrowser
@sc stop SQL Server Distributed Replay Client
@sc stop SQL Server Distributed Replay Controller
@sc stop MsDtsServer110
@sc stop ReportServer 
@sc stop SQLWriter
@sc stop SQLSERVERAGENT 

@echo off 
@echo.完毕! 
@pause


注:
本机使用批处理主要启动了以下服务:

@echo.服务启动...... 
@echo off 
@sc start MsDtsServer110
@sc start MSSQLFDLauncher
@sc start MSSQLSERVER
@sc start MSSQLServerOLAPService 
@sc start ReportServer 
@sc start SQLSERVERAGENT 
@echo off 
@echo.启动完毕! 
@pause



————————————————————————
————————————————————————


各服务的作用的声明:


MSSQLServerADHelper100      ::原始状态:禁用。支持与 Active Directory 的集成,无依存关系。100代表sql2008版本,110代表sql2012版本
MSSQLFDLauncher         ::用于启动全文筛选器后台程序进程的服务,该进程将为 SQL Server 全文搜索执行文档筛选和断字。禁用此服务将使 SQL Server 的全文搜索功能不可用。
MSSQLSERVER         ::只需开启该服务,MSSQLFDLauncher随即启动,但是MSSQLFDLauncher不随该服务的关闭而关闭。提供数据的存储、处理和受控访问,并提供快速的事务处理。
MSSQLServerOLAPService      ::为商业智能应用程序提供联机分析处理(OLAP)和数据挖掘功能。
SQLBrowser          ::原始状态:禁用。将 SQL Server 连接信息提供给客户端计算机。
MsDtsServer100          ::为 SSIS 包的存储和执行提供管理支持。
ReportServer            ::管理、执行、呈现、计划和传递报表。 
SQLWriter           ::提供通过 Windows VSS 基础结构备份/还原 Microsoft SQL server 的接口。
SQLSERVERAGENT          ::执行作业、监视 SQL Server、激发警报,以及允许自动执行某些管理任务。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值