Windows系统下bat文件 一键启动 MySQL

寻龙剑侠
发布于 2024-11-18 / 45 阅读
0

Windows系统下bat文件 一键启动 MySQL

为了减少电脑自启时把暂时不需要的Mysql、Redis等一同启动了,以及解决这些不设置自启后,需要使用时的麻烦,使用bat文件实现一键启动或停止Mysql、Redis等服务

一、安装相应的软件

软件安装过程不做赘述,自行搜索网上的教程

二、查询服务名

  • 使用win+R快捷键,打开运行窗口,输入services.msc ,

  • 回车,弹出系统服务窗口

  • 找到MySQL

  • 右击,选择属性,将启动类型改为手动,保存

三、编写脚本

复制上面的服务名称 MySQL80,新建txt文件,将下面的内容复制到文件中,修改 set SERVICE_NAME=服务名称 为MySQL80 .保存后,文件格式由.txt修改为.bat 。然后右击文件选择管理员权限运行即可

@echo off
setlocal

REM 设置服务名称 这个服务可以修改为需要的服务
set SERVICE_NAME=MySQL80

REM 获取服务的当前状态
for /f "tokens=3 delims=: " %%i in ('sc query %SERVICE_NAME% ^| findstr "STATE"') do (
    set SERVICE_STATUS=%%i
)

REM 去除前后的空格和换行符
set SERVICE_STATUS=%SERVICE_STATUS: =%
set SERVICE_STATUS=%SERVICE_STATUS:~0,1%

REM 判断服务状态并采取相应的操作
echo "status:" %SERVICE_STATUS%
if "%SERVICE_STATUS%"=="R" (
    echo %SERVICE_NAME% Serivce is runing,stopping...
    net stop %SERVICE_NAME%
    if %errorlevel% equ 0 (
        echo %SERVICE_NAME% Service is stop
    ) else (
        echo can not stop %SERVICE_NAME% Service
    )
) else if "%SERVICE_STATUS%"=="S" (
    echo %SERVICE_NAME% Service is stop,test Running...
    net start %SERVICE_NAME%
    if %errorlevel% equ 0 (
        echo %SERVICE_NAME% Service is running
    ) else (
        echo can not run %SERVICE_NAME% Service Name
    )
) else (
    echo %SERVICE_NAME% Service status is unknwon
)

endlocal
pause