net start mysql MySQL 服务正在启动 . MySQL 服务无法启动。 服务没有报告任何错误。

本文记录了解决MySQL服务启动失败以及root用户密码错误的问题。通过检查MySQL版本、环境变量、服务安装,最后通过卸载并重新安装服务,以及使用特殊方式强制修改密码,成功恢复了数据库的正常运行。

在启动项目时,发现昨天能够跑的项目今天跑不了了。一看原来是mysql数据库出现了问题,远程数据库连不上了。那这可咋整啊?用管理员模式启动dos,输入net start mysql:

出现问题:MySQL 服务正在启动 . MySQL 服务无法启动。 服务没有报告任何错误。

这又是咋回事啊?

mysql是否安装

首先检查mysql的版本:

mysql -V

 没有问题。

检查环境变量

然后检查一下环境变量的配置, 因为昨天仍然能够运行,所以应该不是环境变量配置的问题。

系统变量:

用户环境变量:

 果然,环境的配置变量是正常。

到这一步都没检查出来问题,难道这个问题真的解决不了吗?当然不是

检查服务

进入自己的mysql的 bin 文件的安装目录:

我的目录是:

 在当前bin目录执行:

mysqld --remove       

mysqld --install

mysqld --remove命令将原本已安装的mysql服务卸载掉

mysqld --install命令将服务重新安装

重新启动mysql服务

net start mysql

我到这一步就解决了,mysql服务可以成功启动了。 

登录mysql,又出现新的问题:

 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

这个意思是说登陆的密码错误

那密码我不知道怎么办啊?

当然也有办法啦。我们可以通过强制修改密码来解决

1、用超级管理员打开cmd,关闭服务

net stop mysql

 2、跳过权限验证登录mysql

mysqld --shared-memory --skip-grant-tables

3、 重启mysql服务,登录mysql

net start mysql

mysql -u root -p

4、切换到mysql,将密码置空。 

use mysql;

update user set authentication_string='' where user='root';

flush privileges;

5、设置加密规则并更新新密码(‘’newpassword‘’是你的新密码)

alter user 'root'@'localhost' identified by 'newpassword';

grant all privileges on *.* to "root"@'localhost';

flush privileges;

根据更改的新密码 重新登录mysql即可。

至此,这个困扰我好几天问题总算是解决了。

当使用 `net start MySQL80` 命令启动 MySQL80 服务无法启动且未报告错误,可尝试以下解决办法: - **检查 `ini` 文件配置**:若没有给下载好的 MySQL 文件配置 `ini` 文件,可在文件夹中创建一个文本文件,将以下内容复制进去,并根据自身下载的 MySQL 文件夹位置进行修改: ```ini [mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=D:\SCHOOLWORK\JavaEE\mysql-8.0.36-winx64 (这里填实际路径) # 设置mysql数据库的数据的存放目录 datadir=D:\SCHOOLWORK\JavaEE\mysql-8.0.36-winx64\data (这里填实际路径,data文件夹若不存在需创建) # 允许最大连接数 max_connections=200 # 允许连接失败的次数。 max_connect_errors=10 # 服务端使用的字符集默认为utf8mb4 character-set-server=utf8mb4 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 默认使用“mysql_native_password”插件认证 #mysql_native_password authentication_policy=caching_sha2_password [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8mb4 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=utf8mb4 ``` - **重新初始化 `data` 文件夹**:若 `data` 文件夹是自己创建的,可删除 `data` 文件夹,在 DOS 界面进入到 MySQL 的文件夹下输入命令 `mysqld --initialize` ,重新初始化一个 `data` 文件[^3]。 - **查询错误日志**:在 DOS 界面进入 MySQL 文件夹的 `bin` 目录中输入 `mysqld --console` 命令,查询错误日志,通过日志找到真正的错误原因[^3]。 - **检查端口占用情况**:若系统中还有其他版本的 MySQL,可能会占用 MySQL 的 3306 端口。可找到该 MySQL 版本的位置并停止其服务,或直接卸载[^3]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值