RROR 1045 (28000): Access denied for user ‘ODBC’@‘localhost’ (using password)
运行cmd,
输入:mysql -u root -p,回车
输入密码:***,回车
返回错误:mysql ERROR 1045 (28000): Access denied for user ‘ODBC’@‘localhost’ (using password: YES)
–问题分析:
我确定输入我的密码是正确的,但出现这个错误,我就去重新设置密码。
–解决问题过程:
1、在MySQL安装目录(D:\Program Files\mysql-8.0.20-winx64)下找到找到配置文件my.ini ,然后将其打开,可以选择用记事本打开
2、打开后,搜索mysqld关键字找到后,在mysqld下面添加skip-grant-tables,保存退出。(此步为了启动MySQL服务的时候跳过权限表认证)
3、开始按钮+R,打开运行对话框,输入“services.msc”,打开服务窗口,重启MySQL服务;
或者使用管理员权限打开cmd,输入net start mysql,启动MySQL服务
4、运行cmd,输入mysql -u root -p回车,出现password: 的时候直接回车,
而此时出现了另一个错误:ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)
5、我查看了MySQL服务,不知何时停止了,我重试启动服务,启动成功。
6、重新执行步骤4,问题还是没有解决,此时MySQL服务又停止了。
7、上网搜索解决方法,使用管理员权限运行cmd,cd 切换到MySQL安装目录的bin文件夹下,输入net start mysql,启动MySQL服务
8、再输入mysql -u root -p回车,出现password: 的时候直接回车,还是出现错误:ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061),MySQL服务又停止了。
9、又在网上继续查找相关解决方法,试了输入:mysqld --install,提示:The service already exists!,然后再启动服务,执行步骤8,问题没解决。
10、再查找解决方法,有方法说输入:mysql --remove mysql,删除MySQL,然后在用mysqld --install mysql重装,但是我想了想我的数据库有很多数据和东西,就没用这个解决方法。
11、最后不知咋想的,回到了第1步,把之前在配置文件my.ini 上添加skip-grant-tables删掉,保存退出。然后启动MySQL服务,
运行cmd,输入mysql -u root -p回车,输入密码:***,然后就成功了,居然就成功了,我都无语了。
搞了那么久,而问题却回到开始的地方给解决了,我想我一开始思路就有问题。