問題:mysql服務正在啟動 mysql服務無法啟動 && mysql啟動腳本 mysql關閉腳本


此篇目編寫兩個核心目的:

1、mysql服務啟動腳本(start_mysql.bat),mysql服務停止腳本(stop_mysql.bat)的講解。

2、解決問題:mysql服務無法啟動。

 

操作流程:

  一、解壓縮mysql_x64(mysql-5.7.22-winx64.zip)包,在解壓后的目錄里面創建start_mysql.bat腳本,腳本內容和以cmd方式運行腳本的結果如下

 

//start_mysql.bat腳本內容

echo off
set path=%~dp0
echo install mysql service...
echo %path%
cd %path%\bin\
mysqld.exe --remove mysql
mysqld.exe --install mysql
echo start mysql Serviceo
"%SystemRoot%"\system32\net start mysql

 

 原因如下:

問題:安裝MySQL_5.7.225.7.12也是如此)版本,在注冊服務mysql.exe install --mysql后,執行net start mysql ,啟動失敗。

根源:因為5.7版本后,壓縮包里不再有舊版的data目錄了,需要執行mysql.exe --initialize命令做初始化,手動的生成data目錄。
官方的解釋為:
As of MySQL 5.7.6, the Zip Archive no longer includes a data directory.
To initialize a MySQL installation by Creating the date directory and populating the tables in the mysql system database, 
initialize MySQL using either --initialize or initialize -insecure.
For additional information, see Section 2.10.1.1, "initializing the Data Directory Using mysql".

mysql.exe --remove mysql   //移除服務
mysql.exe --initialize   //初始化
mysql.exe --install mysql  //注冊服務
mysql.exe -- net start mysql  //啟動服務

 

 

//start_mysql.bat修改如下
echo off set path=%~dp0 echo install mysql service... echo %path% cd %path%\bin\ mysqld.exe --remove mysql mysqld.exe --initialize //添加這一行 mysqld.exe --install mysql echo start mysql Serviceo "%SystemRoot%"\system32\net start mysql

再次運行start_mysql.bat腳本,效果如下

注意:生成data目錄后,記得先關閉mysqld.exe服務,然后刪除掉start_mysql.bat腳本里添加的 mysqld.exe --initialize 這一行。以后使用start_mysql.bat不再需要初始化這一步驟。

 OK了 ,下面講一下mysql停止服務

二、在解壓后的目錄里,創建stop_mysql.bat腳本,腳本內容和cmd運行結果如下

echo off
set path=%~dp0
echo remove mysql service...
echo stop mysql Service
cd %path%\bin\
"%SystemRoot%"\system32\net stop mysql
mysqld.exe --remove mysql

 

 

 OK了

 謝謝你閱讀

 

[小花兒送給你]

 

下一篇:連接mysql  && ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM