# mysql 服务启动失败:显示:“mysql 服务启动后停止,某些服务在未由其他服务或程序使用时将自己停止”,或者 CMD 中显示:“MySQL服务无法启动,服务没有报告任何错误”。解决方法

mysql 服务启动失败:显示:“mysql 服务启动后停止,某些服务在未由其他服务或程序使用时将自己停止”,或者 CMD 中显示:“MySQL服务无法启动,服务没有报告任何错误”。解决方法

一、问题描述:

1、在打开服务列表中,启动 mysql 服务时,显示:

“mysql 服务启动后停止,某些服务在未由其他服务或程序使用时将自己停止”。

2、在 CMD 窗口,启动 mysql 服务时,显示:

“MySQL服务无法启动,服务没有报告任何错误”。

3、在 CMD 窗口,尝试登录 mysql 服务时,显示:

ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)
mysql 服务启动失败

在这里插入图片描述

二、解决方法:

1、清空 MySQL 的数据目录下的 data 文件夹。

1)data 文件夹默认路径(可根据你自己的实际安装路径):
C:Program FilesMySQLMySQL Server 5.7data

2)建议先备份 data 文件夹,然后清空了 data 文件夹所有内容。

2、在 mysql 的安装目录下的 bin 目录下,打开 CMD,执行命令行 mysqld --initialize --console ,记住最后一串字符串(你的mysql的初始登录密码)
mysqld --initialize --console

记住最后一串字符串,这是你的 mysql 的初始登录密码。
在这里插入图片描述

3、先删除 mysql 服务 sc delete mysql
sc delete mysql
4、重新安装 MySQL 服务命令: mysqld --install mysql
mysqld --install mysql
5、再次尝试启动 MySQL 服务命令: net start mysql(这次就成功了)
net start mysql

在这里插入图片描述

6、用重置的初始密码(如:9;7UQ4g-5-%-),登录 mysql
bin>mysql -u root -p

## 输入刚才重置的初始密码(如:9;7UQ4g-5-%-)

在这里插入图片描述

7、修改 mysql 初始密码为你需要的密码,如:123,修改完重新登录。
# 修改密码
alter user 'root'@'localhost' identified by '123';

# 退出 mysql
exit

# 用修改后的密码,重新登录 mysql
mysql -u root -p

在这里插入图片描述

8、如果数据库连接错误问题依然存在,即:mysql 服务正常启动,但是 尝试登录 mysql 服务时,显示错误:

ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)

解决方法:

8.1 配置 mysql 文件下的 my.ini 文件:

my.ini 默认路径:C:/ProgramData/MySQL/MySQL Server 5.7/Data/my.ini 具体根据你自己的 mysql 路径。

# Path to the database root 数据存放路径
datadir=C:/ProgramData/MySQL/MySQL Server 5.7/Data/my.ini

具体关注以下几项配置:

[client]
# socket=MYSQL
port=3306

# default-character-set=设置客户端默认字符集
default-character-set=utf8

# Path to installation directory. 安装路径
# basedir="C:/Program Files/MySQL/MySQL Server 5.7/"

# Path to the database root 数据存放路径
datadir=C:/ProgramData/MySQL/MySQL Server 5.7/Data

# The default storage engine that will be used when create new tables when
# 创建新表时默认存储引擎
default-storage-engine=INNODB

# Set the SQL mode to strict
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

# 允许最大连接数
max_connections=151
8.2 管理员身份运行 cmd 执行 sc query mysql 和 sc delete mysql
sc query mysql 

# 删除 mysql 服务
sc delete mysql
8.3 清空 MySQL 目录下的 data 文件夹。

清空 MySQL 的数据目录下的 data 文件夹。
1)data 文件夹默认路径(可根据你自己的实际安装路径):
C:Program FilesMySQLMySQL Server 5.7data

2)建议先备份 data 文件夹,然后清空了 data 文件夹所有内容。

8.4 在 mysql 的 bin 文件夹下运行 mysqld --initialize-insecure,等待运行完成。
mysqld --initialize-insecure
8.5 运行 mysqld.exe --install mysql --defaults-file=yourmysqlmy.ini
mysqld.exe --install mysql --defaults-file=C:ProgramDataMySQLMySQL Server 5.7my.ini
8.6 启动 mysql 服务,登录 mysql 成功登录。
# 启动 mysql 服务,
net start mysql

# 登录 mysql
mysql -u root -p