批量启动oracle服务,启动关闭oracle服务.bat

这是一个用于启动和关闭Oracle服务的批处理脚本。用户可以选择操作FS、GZ或ORCL服务,脚本会检查服务状态并执行相应的启动或停止命令。通过SCQUERY命令检查服务存在性,并使用NETSTART和NETSTOP控制服务。
摘要由CSDN通过智能技术生成

根据选择启动/关闭oracle服务

@echo off

:menu

echo ***************************************************

echo 1 - 启动FS服务11 - 关闭FS服务

echo 2 - 启动GZ服务22 - 关闭GZ服务

echo 3 - 启动ORCL服务33 - 关闭ORCL服务

echo 其他任意键退出

echo ***************************************************

set /p var="请选择你需要的操作:"

goto label%var%

REM START =======================================================

:alreadyStart

@echo 该服务已启动

@pause...

cls

goto :menu

:alreadyStop

@echo 该服务已停止

@pause...

cls

goto :menu

:label1

REM 通过sc query查看服务是否存在,>nul 2>nul表示不管命令是否正确运行,都不会在屏幕看到这个命令所产生的屏幕显示

sc query |find /i "OracleServiceFS" >nul 2>nul

REM echo %errorlevel%,结果如果为0,说明已经启动

if %errorlevel% equ 0 (goto alreadyStart) else (

@echo 正在启动FS服务...

@net start OracleOraDb10g_home1TNSListener

@net start OracleOraDb10g_home1iSQL*Plus

@net start OracleServiceFS

)

@pause...

cls

goto :menu

:label2

sc query |find /i "OracleServiceGZ" >nul 2>nul

if %errorlevel% equ 0 (goto alreadyStart) else (

@echo 正在启动GZ服务...

@net start OracleOraDb10g_home1TNSListener

@net start OracleOraDb10g_home1iSQL*Plus

@net start OracleServiceGZ

)

@pause...

cls

goto :menu

:label3

sc query |find /i "OracleServiceORCL" >nul 2>nul

if %errorlevel% equ 0 (goto alreadyStart) else (

@echo 正在启动ORCL服务...

@net start OracleOraDb10g_home1TNSListener

@net start OracleOraDb10g_home1iSQL*Plus

@net start OracleServiceORCL

)

@pause...

cls

goto :menu

REM STOP =======================================================

:label11

sc query |find /i "OracleServiceFS" >nul 2>nul

REM echo %errorlevel%,结果如果不为0(服务不存在的话,结果为1),说明没启动(已停止)

if not %errorlevel% equ 0 (goto alreadyStop) else (

@echo 正在停止FS服务...

@net stop OracleOraDb10g_home1TNSListener

@net stop OracleOraDb10g_home1iSQL*Plus

@net stop OracleServiceFS

)

@pause...

cls

goto :menu

:label22

sc query |find /i "OracleServiceGZ" >nul 2>nul

if not %errorlevel% equ 0 (goto alreadyStop) else (

@echo 正在停止GZ服务...

@net stop OracleOraDb10g_home1TNSListener

@net stop OracleOraDb10g_home1iSQL*Plus

@net stop OracleServiceGZ

)

@pause...

cls

goto :menu

:label33

sc query |find /i "OracleServiceORCL" >nul 2>nul

if not %errorlevel% equ 0 (goto alreadyStop) else (

@echo 正在停止ORCL服务...

@net stop OracleOraDb10g_home1TNSListener

@net stop OracleOraDb10g_home1iSQL*Plus

@net stop OracleServiceORCL

)

@pause...

cls

goto :menu

参考文章:

IF-ERRORLEVEL使用方法: http://www.jb51.net/article/7525.htm

>nul 2>nul 说明: http://www.jb51.net/article/30536.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值