千家信息网

怎么解决MySQL中的ERROR 1045 (28000)错误问题

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,本篇内容介绍了"怎么解决MySQL中的ERROR 1045 (28000)错误问题"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望
千家信息网最后更新 2025年01月23日怎么解决MySQL中的ERROR 1045 (28000)错误问题

本篇内容介绍了"怎么解决MySQL中的ERROR 1045 (28000)错误问题"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、错误描述:
错误如标题:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)。我用root@localhost授权登陆,然后给其中
一个用户授权,然后报如上错误:
[mysql@centos6-clone ~]$ mysql -u root -p
Enter password:
Your MySQL connection id is 2
Server version: 5.6.25-log MySQL Community Server (GPL)
mysql> grant all on *.* to 'fi'@'127.0.0.1' identified by "fi";
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
mysql> exit
Bye
按理来说,root@localhost是最高权限。居然不能给其他人授权。1045错误是授权拒绝。怎么办?
二、错误分析
查看下root权限:
mysql> show grants;
+----------------------------------------------------------------------------------------------------------------------+
| Grants for root@localhost |
+----------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*E74858DB86EBA20BC33D0AECAE8A8108C56B17FA' |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION |
+----------------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
我们看root@localhost 有权限:ALL PRIVILEGES,但是没有WITH GRANT OPTION 语句,就是别人授权的权限。所以,不能授权的原因是:
没有这个WITH GRANT OPTION 语句。
三、错误解决
知道原因了,解决问题就很简单了。用另外一个方式登录root@127.0.0.1,然后给root@localhost授权,这样root@localhost 就可以给其他用户
授权了。
[mysql@centos6-clone ~]$ mysql -uroot -p -h227.0.0.1
Enter password:
mysql> SHOW GRANTS
-> ;
+----------------------------------------------------------------------------------------------------------------------------------------+
| Grants for root@127.0.0.1 |
+----------------------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY PASSWORD '*E74858DB86EBA20BC33D0AECAE8A8108C56B17FA' WITH GRANT OPTION |
+----------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*E74858DB86EBA20BC33D0AECAE8A8108C56B17FA' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
[mysql@centos6-clone ~]$ mysql -uroot -p
Enter password:
mysql> grant all on *.* to 'fo'@'%' identified by "fo";
Query OK, 0 rows affected (0.00 sec)

"怎么解决MySQL中的ERROR 1045 (28000)错误问题"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

错误 权限 问题 内容 原因 更多 用户 知识 语句 实用 最高 学有所成 接下来 困境 如上 实际 就是 怎么办 情况 文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库备份到低版本 上海个人软件开发管理办法 会议服务器需要显卡吗 成都市公安局大运会网络安全 数据库安全防护魔力象限 如何清空阿里云服务器上的数据 关于网络安全的班会内容 韩国网络技术怎么样 服务器改成机械硬盘 电脑网络技术分析数据 ICT大赛网络安全试题 无线网络安全防护系统 被服务器主动断开连接是什么意思 网络安全技术应用示范试点 cdn网络安全加固培训 华为数通软件开发工程师培训 无锡新型刀片服务器定制 光大银行重庆分行软件开发岗 湖南pdu服务器专用电源价格表 网络安全风险范围包括什么 企业网络安全架构开题报告 达因军慧网络技术公司 新能源汽车5月数据库 虚拟机安装数据库2016 燃烧的远征数据库 下载 中小型金融网络安全 网络安全技术应用示范试点 php封装数据库的增删改查 为服务器一块硬盘故障灯亮起 网络安全技术教程
0