问题: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