windows安装的MySQL(mysql-8.0.29-winx64)数据库长时间没有使用,今天用 Navicat 连接时,突然就连不上了 ,报错 ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost:3306’ (10061) , 这里记录一下解决过程。
排查问题
1、首先排查MYSQL 服务是否开启, Ctrl + Alt + Delete 打开任务管理器, 搜索 MySQL 服务,服务正常运行,如下所示
2、启动命令提示符 输入 mysql -u root -p
尝试连接mysql , 还是报错 ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost:3306’ (10061) , 好吧,数据库服务出问题了(还好没什么重要数据在里面)。
恢复服务
1、停止 MySQL 服务, 在任务管理器右键停止,或者 命令行 输入net stop mysql
停止服务
2、以管理员身份打开命令提示符, 输入mysqld --remove mysql
移除 MySQL 服务。
3、进入 MySQL 安装目录中找到 data 文件,清空文件夹。注意:这一步会将数据库存储的内容全部清除, 这里的一个文件夹就有可能是一个 database ,比如我创建的 my_db。
4、重新注册服务,输入mysqld -install
5、重新初始化,输入 mysqld --initialize
,初始化之后 data 文件夹会重新出现文件, 其中初始化密码会被记录在一个后缀为.err
的文件中,用记事本打开,可以看到 root 用户的初始化密码 root@localhost: Ep0SHEkqN*gs
。
6、启动 MySQL 服务 , 输入 net start mysql
7、输入 mysql -u root -p
然后用(在.err
文件中找到的)初始化密码Ep0SHEkqN*gs
登录
8、输入ALTER USER 'root'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '123456';
修改密码为 123456
测试连接
使用 Navicat 测试 MySQL 连接,连接成功,至此 MySQL 服务成功恢复。
这种做法会把数据丢失,严格意义上来说也不能叫恢复服务,应该叫重装。