MySQLの再起動をbatファイルで行う MySQL
サービスの再起動を「コントロールパネル>管理ツール>サービス」から行うのは面倒なので、batファイルから再起動させてみる。
基本ファイル
下記ファイルの9行目に再起動の対象サービス名、12行目にログの出力場所を記述し「任意の名前.bat」として保存します。(windowsで実行させるので作成ファイルの文字コードはShift-JISにします)
あとは再起動を行いたい時に作成したbatファイルをダブルクリックすれば処理が実行されます。
ちなみに今回はサービスが開始していない時も、再起動できるようにエラー時に処理を中止していません。処理を中止させたい時は、エラーログ出力後に「exit」してください。
@echo off rem ------------------------------------------------- rem サービスの再起動用batファイル rem ------------------------------------------------- rem # 再起動サービス名 set SERVICE="サービス名を記述" rem # ログ出力パス set LOG=出力パスを記述 rem # 実行日時出力 echo ---------- >> %LOG% date /t >> %LOG% time /t >> %LOG% rem # 対象サービス停止コマンド実施 net stop %SERVICE% >> %LOG% rem # 対象サービス停止エラー判定 if %errorlevel%==0 goto STOP_OK rem # エラー時 echo サービス終了時にエラーが発生しました。 >> %LOG% echo エラー番号:%errorlevel% >> %LOG% net helpmsg %errorlevel% >> %LOG% rem # 正常時 :STOP_OK echo 処理終了時刻 >> %LOG% time /t >> %LOG% echo. >> %LOG% rem # 対象サービス開始コマンド実施 net start %SERVICE% >> %LOG% if %errorlevel%==0 goto START_OK rem # エラー時 echo サービス開始時にエラーが発生しました。 >> %LOG% echo エラー番号:%errorlevel% >> %LOG% net helpmsg %errorlevel% >> %LOG% rem # 正常時 :START_OK echo 処理終了時刻 >> %LOG% time /t >> %LOG% echo. >> %LOG%
MySQL再起動用
もう一例「MySQL」を再起動させ、ログファイルを「C:\restart_service.log」に出力するbatファイルは以下のような記述になります。設定ファイルを変更した時などに便利です。
@echo off rem ------------------------------------------------- rem サービスの再起動用batファイル rem ------------------------------------------------- rem # 再起動サービス名 set SERVICE="MySQL" rem # ログ出力パス set LOG=C:\restart_service.log rem # 実行日時出力 echo ---------- >> %LOG% date /t >> %LOG% time /t >> %LOG% rem # 対象サービス停止コマンド実施 net stop %SERVICE% >> %LOG% rem # 対象サービス停止エラー判定 if %errorlevel%==0 goto STOP_OK rem # エラー時 echo サービス終了時にエラーが発生しました。 >> %LOG% echo エラー番号:%errorlevel% >> %LOG% net helpmsg %errorlevel% >> %LOG% rem # 正常時 :STOP_OK echo 処理終了時刻 >> %LOG% time /t >> %LOG% echo. >> %LOG% rem # 対象サービス開始コマンド実施 net start %SERVICE% >> %LOG% if %errorlevel%==0 goto START_OK rem # エラー時 echo サービス開始時にエラーが発生しました。 >> %LOG% echo エラー番号:%errorlevel% >> %LOG% net helpmsg %errorlevel% >> %LOG% rem # 正常時 :START_OK echo 処理終了時刻 >> %LOG% time /t >> %LOG% echo. >> %LOG%