Z次元

这篇文章记录了一次解决MySQL无法连接问题的过程。作者首先尝试启动MySQL服务失败,随后发现是旧版本未完全卸载导致的。通过删除旧服务、重新安装MySQL并启动服务后,作者遇到登录密码错误的问题。通过跳过授权表并修改root用户密码,最终解决了所有问题。文章详细记录了每一步操作及遇到的错误和解决方法,为处理类似问题提供了实用的指导。

连接MySQL时报错:
Can't connect to MySQL server on localhost (10061)

原因MySQL没有启动:
解决方法,手动去服务中启动,或者在MySQL安装路径bin路径下打开cmd,输入命令

net start mysql

一般来说就解决了,我本来也是这么想的,结果发现事情并没有那么简单
于是我记记录下了此处处理过程

接上,输入net start MySQL时报错:

发生系统错误 3.
系统找不到指定路径

然后我就打算手动启动MySQL,结果发现服务里面的MySQL对应的位置并不是我安装MySQL的位置,
原来是上一位使用者没有把mySQ卸载干净导致的,

先执行以下命令,清除掉之前版本的MySQL:

sc query mysql

sc delete mysql

sc query mysql

清除完旧版本后服务里面仍然没有MySQL,所以我们需要重新安装MySQL:

mysqld -install

图片

然后继续执行MySQL启动命令

net start mysql

报错:

发生系统错误 1058
无法启动服务,原因可能是已被禁用或与其相关联的设备没有启用。

解决方法:移除MySQL服务重新安装

mysqld -nt -remove

mysql --install

再次启动MySQL服务

net start mysql

图片

登录MySQL,又又又报错了:

ERROR 1045 (28000): Acess denied for user 'root'@'localhost' (useing password: YES)

图片

原因:密码错了。

好家伙,上一位使用者不仅没把MySQL卸载干净,还没用统一的密码

然后我们就需要重新修改密码了,这里就涉及到了在不知道MySQL密码的情况下,直接修改密码的方式:

首先停滞MySQL服务,然后输入以下命令跳过授权表,该命令开启后,登录MySQL就不需要输入密码了:

mysqld --skip-grant-tables

然后我们在MySQL的bin路径下,重新打开一个新的cmd

进行修改密码操作

mysql #直接输入mysql就行,不用附带任何参数

选择MySQL数据库

use mysql;

修改密码:

update user set password=password('新的密码') where user='root' and host='localhost';

报错:ERROR 1054 (42S22): Unknown column 'password' in 'fie
原因:MySQL数据库下已经没有password这个字段了

解决方法:将password字段改成authentication_string

update mysql.user set authentication_string=password('新的密码') where user='root' ;

后记

MySQL报以下错误:

服务名无效。

图片

原因:MySQL未安装

建议直接重装,一劳永逸,如果MySQL已经安装了,但是还是报这个错的话,可以执行以下命令,安装MySQL:

mysql --install

然后启动MySQL:

net start mysql
评论区

这里还没有评论哦

快来发一条评论抢占前排吧

目录