问题的发生是在一个风和日丽的下午,一切都很美好。源于我修改了数据库用户的密码。
随后就拉开了危机的序幕
发生了1045错误:Access denied for user 'root'@'localhost'(using password: YES/NO)
前情回顾:
以前做项目的时候选择了xampp和navicat的组合方式使用数据库,两个字,方便!最近练习爬虫的项目,需要链接到MySQL。我尝试着改了一下用户密码,就发生了1045错误。重新建立新的链接还是1045错误了。
这个时候不能慌。网上借鉴一番各位大佬的挽救方法
比如(24条消息) 在navicat中改变mysql用户的密码后,出现1045连接不上问题;_苯阿槑的博客-CSDN博客
虽然结果还是不尽人意,但是有学到一招。
补充介绍一下这两个宝藏工具吧
xampp(百度百科)
XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包。这个软件包原来的名字是 LAMPP,但是为了避免误解,最新的几个版本就改名为 XAMPP 了。它可以在Windows、Linux、Solaris、Mac OS X 等多种操作系统下安装使用,支持多语言:英文、简体中文、繁体中文、韩文、俄文、日文等。
许多人通过他们自己的经验认识到安装 Apache 服务器是件不容易的事儿。如果您想添加 MySQL、PHP 和 Perl,那就更难了。XAMPP 是一个易于安装且包含 MySQL、PHP 和 Perl 的 Apache 发行版。XAMPP 的确非常容易安装和使用:只需下载,解压缩,启动即可。
XAMPP Installers and Downloads for Apache Friends
Navicat(百度百科)
“Navicat”是一套可创建多个连接的数据库管理工具,用以方便管理 MySQL、Oracle、PostgreSQL、SQLite、SQL Server、MariaDB 和/或 MongoDB 等不同类型的数据库,并支持管理某些云数据库,例如阿里云、腾讯云。Navicat 的功能足以符合专业开发人员的所有需求,但是对数据库服务器初学者来说又相当容易学习。Navicat 的用户界面 (GUI) 设计良好,让你以安全且简单的方法创建、组织、访问和共享信息。
Navicat | 支持 MySQL、MariaDB、MongoDB、SQL Server、SQLite、Oracle 和 PostgreSQL 的数据库管理
挽救之路
因为不想重装MySQL。选择了重置密码这条道路
先找到自己安装xampp的MySQL\bin位置,比如我的D:\software\system\Mysql\mysql\bin
首先要在xampp中把MySQL的服务关了
然后再cmd中切换到bin目录下,再输入 mysqld --skip-grant-tables 使登录时跳过权限检查。就会的得到这样的界面 。在xampp中发现MySQL重新启动了,不要关掉哦。
重新开一个cmd ,,同样切换到bin目录下
输入命令 mysql.exe -u root
然后输入use mysql
最后输入update user set password=PASSWORD('root') where user='root'
回车即可
“““PASSWORD('新的密码')”””
之后就可以在navicat建立一个新的连接。
重置密码参考了
xampp mysql密码忘记_XAMPP重置MySQL密码_weixin_39634052的博客-CSDN博客