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)
二、解决方法:
1、清空 MySQL 的数据目录下的 data 文件夹。
1)data 文件夹默认路径(可根据你自己的实际安装路径):
C:\Program Files\MySQL\MySQL Server 5.7\data
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 Files\MySQL\MySQL Server 5.7\data
2)建议先备份 data 文件夹,然后清空了 data 文件夹所有内容。
8.4 在 mysql 的 bin 文件夹下运行 mysqld --initialize-insecure,等待运行完成。
mysqld --initialize-insecure
8.5 运行 mysqld.exe --install mysql --defaults-file=yourmysql\my.ini
mysqld.exe --install mysql --defaults-file=C:\ProgramData\MySQL\MySQL Server 5.7\my.ini
8.6 启动 mysql 服务,登录 mysql 成功登录。
# 启动 mysql 服务,
net start mysql
# 登录 mysql
mysql -u root -p