windows下bat启用MaraiaDB服务

分享知识  传递快乐

 

此命令是本人用于操作MaraiaDB服务的启动、停止、重启、查看配置等操作,仅供参考。

如有需要了解更多bat命令,请点击查看《BAT命令常用API》。

 

代码如下:

::对服务的操作
@ECHO OFF
TITLE WNMP管理程序
COLOR 0A

set WNMP_HOME=D:/WnmpServer/wnmp/bin
set MARIADB_HOME=%WNMP_HOME%/mariadb/10.4.10/bin
set SERVER_NAME=MariaDB

:MENU
:: 判断程序是否存在
ECHO **********************************
ECHO *	
ECHO *	MariaDB程序管理
ECHO *	
ECHO **********************************

echo.
echo. [1] 启动MariaDB
echo. [2] 关闭MariaDB
echo. [3] 重启MariaDB
echo. [4] 删除MariaDB
echo. [5] 查看进程
echo. [6] 查看版本
echo. [7] 刷新
echo. [0] 退出
echo.

echo.请输入选择的序号:
set /p ID=
	if "%id%"=="1" goto start 
	if "%id%"=="2" goto stop 
	if "%id%"=="3" goto restart 
	if "%id%"=="4" goto remove
	if "%id%"=="5" goto show 
	if "%id%"=="6" goto version
	if "%id%"=="7" goto refresh
	if "%id%"=="0" exit
PAUSE 


::*************************************************************************************
::创建
::*************************************************************************************
::启动
:start 
	call :StartMariaDB
	call :Line
	goto MENU

::停止
:stop 
	call :StopMariaDB
	call :Line
	goto MENU

::重启
:restart
	call :StopMariaDB
	call :StartMariaDB
	call :Line
	goto MENU

::删除
:remove
	call :RemoveMariaDB
	call :Line
	goto MENU

::查看版本
:version
    call :MariaDBVer
	call :Line
	goto MENU

::查看进程
:show
	call :ShowMariaDB
	call :Line
	goto MENU

::刷新
:refresh
	echo. 
	cls
	goto MENU

::*************************************************************************************
::底层
::*************************************************************************************
::启动
:StartMariaDB
	echo.
	::判断服务是否存在,errorlevel返回0存在,1不存在
	sc query %SERVER_NAME% |findstr /i "%SERVER_NAME%">nul 2>nul
	::echo errorlevel:%errorlevel%
	if %errorlevel% EQU 1 (
		echo 服务不存在,正在创建服务....
		%MARIADB_HOME%/mysql_install_db.exe --datadir=%WNMP_HOME%/mariadb/database --service=%SERVER_NAME% --password=admini
		net start %SERVER_NAME%
	) else (
		::判断服务是否启动(如果是停止,则启动服务)
		sc query %SERVER_NAME% |find /i "STOPPED">nul 2>nul
		::echo errorlevel:%errorlevel%
		for /F "tokens=3 delims=: " %%H in ('sc query %SERVER_NAME% ^| findstr "STATE"') do (
			::echo %%H
			if /I "%%H" EQU "STOPPED" (
				net start %SERVER_NAME%
			) else (
				echo %%H
			)
		)
	)
	goto :eof

::关闭
:StopMariaDB
	echo.
	::判断服务是否存在,errorlevel返回0存在,1不存在
	sc query %SERVER_NAME% |findstr /i "%SERVER_NAME%">nul 2>nul
	::echo errorlevel:%errorlevel%
	if %errorlevel% EQU 0 (
		::判断服务是否启动
		sc query %SERVER_NAME% |find /i "RUNNING">nul 2>nul
		::echo errorlevel:%errorlevel%
		for /F "tokens=3 delims=: " %%H in ('sc query %SERVER_NAME% ^| findstr "STATE"') do (
			::echo %%H
			if /I "%%H" EQU "RUNNING" (
				net stop %SERVER_NAME%
			) else (
				echo %%H
			)
		)
	) else (
		echo 服务不存在,请创建服务!
	)
	goto :eof

::删除
:RemoveMariaDB
	echo.
	::判断服务是否存在,errorlevel返回0存在,1不存在
	sc query %SERVER_NAME% |findstr /i "%SERVER_NAME%">nul 2>nul
	::echo errorlevel:%errorlevel%
	if %errorlevel% EQU 0 (
		::判断服务是否启动(如果是服务已启动,先停止再删除)
		sc query %SERVER_NAME% |find /i "STOPPED">nul 2>nul
		::echo errorlevel:%errorlevel%
		for /F "tokens=3 delims=: " %%H in ('sc query %SERVER_NAME% ^| findstr "STATE"') do (
			::echo %%H
			if /I "%%H" EQU "STOPPED" (
				%MARIADB_HOME%/mysqld --remove %SERVER_NAME%
			) else if /I "%%H" EQU "RUNNING" (
				net stop %SERVER_NAME%
				%MARIADB_HOME%/mysqld --remove %SERVER_NAME%
			)
		)
	) else (
		echo 服务不存在!
	)
	goto :eof

::查看版本
:MariaDBVer
	echo. 
	%MARIADB_HOME%/mysqld -v
 	goto :eof
	

::查看进程
:ShowMariaDB
	echo. 
	tasklist|find /i "mysqld.exe"
	goto :eof

::
:Line
	echo.
	echo #########################################################
	echo.
	echo.

 

 

 

 

 

 

 

 

 

——————————
如有不足请留言指正
相互学习,共同进步

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旷野历程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值