[MySQL故障] ERROR 1045 (28000): Access denied for user 'mmm_MySQL

php中文网
发布: 2016-06-01 13:28:33
原创
1340人浏览过

bitsCN.com

[mysql故障] error 1045 (28000): access denied for user 'mmm_agent'@'exxx-tx.com' (using password: yes)

 

1 error登陆错误

[python] 

[uxxx@exxx-0702 ~]$ mysql -hexxx-tx.com --user='mmm_agent' --password='#tx$'  

ERROR 1045 (28000): Access denied for user 'mmm_agent'@'exxx-tx.com' (using password: YES)  

 

2 去掉-h参数,能顺利登陆 

[python] 

[uxxx@exxx-0702 ~]$ mysql --user='mmm_agent' --password='#tx$'  

Welcome to the MySQL monitor.  Commands end with ; or /g.  

Your MySQL connection id is 491  

Server version: 5.x.xa-log MySQL tx Reltxse  

  

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.  

  

Oracle is a registered trademark of Oracle Corporation and/or its  

affiliates. Other names may be trademarks of their respective  

owners.  

  

  

Type 'help;' or '/h' for help. Type '/c' to cltxr the current input statement.  

  

  

mysql>  

 

3 难道是对于-h参数有限制?我换个用户试试看

[sql] 

mysql> GRANT ALL PRIVILEGES ON *.* TO 'mg'@'%' IDENTIFIED BY '#tx$';  

Query OK, 0 rows affected (0.01 sec)  

  

  

mysql> exit  

[uxxx@exxx-0702 ~]$ mysql -hexxx-tx.com --user='mg' --password='#tx$'  

Welcome to the MySQL monitor.  Commands end with ; or /g.  

Your MySQL connection id is 965  

Server version: 5.x.xa-log MySQL tx Reltxse  

  

  

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.  

  

  

Oracle is a registered trademark of Oracle Corporation and/or its  

affiliates. Other names may be trademarks of their respective  

owners.  

  

  

Type 'help;' or '/h' for help. Type '/c' to cltxr the current input statement.  

  

  

mysql>   

 

看来不是对于-h参数的限制问题,应该是别的故障,密码是OK的。

 

 

4 去查看mmm_agent用户吧。

[sql] 

mysql> select user,host from mysql.user where user='mmm_agent';  

+-----------+------+  

| user      | host |  

+-----------+------+  

| mmm_agent | %    |  

| mmm_agent | 10.% |  

+-----------+------+  

2 rows in set (0.00 sec)  

  

  

mysql> show grants for mmm_agent@'%';  

+-------------------------------------------------------------------------------------------------------------------+  

Content at Scale
Content at Scale

SEO长内容自动化创作平台

Content at Scale 154
查看详情 Content at Scale

| Grants for mmm_agent@%                                                                                            |  

+-------------------------------------------------------------------------------------------------------------------+  

| GRANT ALL PRIVILEGES ON *.* TO 'mmm_agent'@'%' IDENTIFIED BY PASSWORD '*77074D8AC9603904375ED54F1D2E14CDACB7842F' |  

+-------------------------------------------------------------------------------------------------------------------+  

1 row in set (0.00 sec)  

  

  

mysql> show grants for mmm_agent@'10.%';  

+--------------------------------------------------------------------------------------------------------------------------------------------------+  

| Grants for mmm_agent@10.%                                                                                                                        |  

+--------------------------------------------------------------------------------------------------------------------------------------------------+  

| GRANT RELOAD, PROCESS, SUPER, REPLICATION CLIENT ON *.* TO 'mmm_agent'@'10.%' IDENTIFIED BY PASSWORD '*6745119376CF6BD5E0F0A50484A91AE7BD172612' |  

| GRANT EXECUTE ON `audit`.* TO 'mmm_agent'@'10.%'                                                                                                 |  

+--------------------------------------------------------------------------------------------------------------------------------------------------+  

2 rows in set (0.00 sec)  

  

  

mysql>   

 

 

 

 

-- 看到这里有2个帐号,相同 用户名,不同host,而且密码也不相同,那么我将host为10.%的mmm_agent用户的密码修改成与host为%的mmm_agent用户一样的密码,试试看。

[sql] 

GRANT RELOAD, PROCESS, SUPER, REPLICATION CLIENT ON *.* TO 'mmm_agent'@'10.%' IDENTIFIED BY '#tx$';  

GRANT EXECUTE ON `audit`.* TO 'mmm_agent'@'10.%'   

  

  

mysql> GRANT RELOAD, PROCESS, SUPER, REPLICATION CLIENT ON *.* TO 'mmm_agent'@'10.%' IDENTIFIED BY '#tx$';  

Query OK, 0 rows affected (0.01 sec)  

  

  

mysql> GRANT EXECUTE ON `audit`.* TO 'mmm_agent'@'10.%'   

    -> ;  

Query OK, 0 rows affected (0.00 sec)  

  

  

mysql> exit  

Bye  

[uxxx@exxx-0702 ~]$ mysql -hexxx-tx.com --user='mmm_agent' --password='#tx$'  

Welcome to the MySQL monitor.  Commands end with ; or /g.  

Your MySQL connection id is 1191  

Server version: 5.x.xa-log MySQL tx Reltxse  

  

  

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.  

  

  

Oracle is a registered trademark of Oracle Corporation and/or its  

affiliates. Other names may be trademarks of their respective  

owners.  

  

  

Type 'help;' or '/h' for help. Type '/c' to cltxr the current input statement.  

  

mysql>   

[sql] 

-- 用-h参数登陆mysql成功了。  

 

 

[总结]:

嗯,可以了,使用[uxxx@exxx-0702 ~]$ mysql -hexxx-tx.com --user='mmm_agent' --password='#tx$' 登陆成功了。

 

mysql在调用-h参数的时候,如果用户名相同,在host的选择上面,先去匹配范围小的用户,在这个案例中, %比10.%的范围要大得多,所以再用 -hexxx-tx.com -ummm_agent访问的时候直接匹配范围小的10.%用户了,而恰巧mmm_agent@'10.%'用户的密码与mmm_agent@'%'用户的密码不是一样的,就报了如下密码错误的提示:

ERROR 1045 (28000): Access denied for user 'mmm_agent'@'%' (using password: YES)

 

bitsCN.com
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号