mysql全局权限账户%登录不上ERROR 1045 (28000): Access denied for user 'mhz'@'localhost' (using password: YES)
2016-02-24 13:52
796 查看
mysql全局权限账户%登录不上
ERROR 1045 (28000): Access denied for user 'mhz'@'localhost' (using password: YES)
解决
查看错误提示
有主机名字的就必须赋值主机名
mysql> GRANT ALL PRIVILEGES ON *.* TO 'mhz'@'mgr2' IDENTIFIED BY 'mhz' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.07 sec)
/article/1544128.html
分类: mysql2013-11-11 12:08 1332人阅读 评论(0) 收藏 举报
mysql登录
mysql中有新建了一个%(允许所有主机连接)和ALL权限的账户。但是竟然连不上。用root或者其他localhost的用户却可以登录。首先检查下防火墙打开了没,可以用service iptables stop打开防火墙。如果仍然报错:
报错:ERROR 1045 (28000): Access denied for user 'zzq'@'localhost' (using password: YES)
帐号密码都对了 就是连不上。细心的话我们会发现 帐号权限是%,而这里提示的是localhost。
错误原因如下:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%' IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
?6?1 前两个帐户名称都是monty,而且都是拥有所有权限和密码。但是两者的区别在于,第一个帐户(monty@localhost)只能通过本地登录,而第二个账户(monty@%)可以通过任意主机登录。值得注意的是,为了能够使用monty帐户在任何地方进行登录,这两个账户同时存在则是必要的。因为,如果没有本地帐户(monty@localhost),使用monty帐户登录时,mysql_install_db将优先考虑创建一个本地的匿名帐户。那么结果将是monty账户会被当作一个匿名帐户来处理。原因则在于,匿名帐户拥有一个比nonty@%账户更加具体的host字段值,从而在user表排序的时候会相对出现的更早。
也就是说 同一个账户 要同时存在%帐号或者localhost帐号时, %帐号才起作用。
我们给 zzq帐号添加一个localhost帐号。
GRANT ALL PRIVILEGES ON *.* TO 'zzq'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
flush privileges;
然后再登录 发现可以登录了。 远程用workbench也能连接了。
ERROR 1045 (28000): Access denied for user 'mhz'@'localhost' (using password: YES)
解决
查看错误提示
有主机名字的就必须赋值主机名
mysql> GRANT ALL PRIVILEGES ON *.* TO 'mhz'@'mgr2' IDENTIFIED BY 'mhz' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.07 sec)
/article/1544128.html
mysql全局权限账户%登录不上ERROR 1045 (28000): Access denied for user 'zzq'@'localhost'
(using password: YES)
分类: mysql2013-11-11 12:08 1332人阅读 评论(0) 收藏 举报mysql登录
mysql中有新建了一个%(允许所有主机连接)和ALL权限的账户。但是竟然连不上。用root或者其他localhost的用户却可以登录。首先检查下防火墙打开了没,可以用service iptables stop打开防火墙。如果仍然报错:
报错:ERROR 1045 (28000): Access denied for user 'zzq'@'localhost' (using password: YES)
帐号密码都对了 就是连不上。细心的话我们会发现 帐号权限是%,而这里提示的是localhost。
错误原因如下:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%' IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
?6?1 前两个帐户名称都是monty,而且都是拥有所有权限和密码。但是两者的区别在于,第一个帐户(monty@localhost)只能通过本地登录,而第二个账户(monty@%)可以通过任意主机登录。值得注意的是,为了能够使用monty帐户在任何地方进行登录,这两个账户同时存在则是必要的。因为,如果没有本地帐户(monty@localhost),使用monty帐户登录时,mysql_install_db将优先考虑创建一个本地的匿名帐户。那么结果将是monty账户会被当作一个匿名帐户来处理。原因则在于,匿名帐户拥有一个比nonty@%账户更加具体的host字段值,从而在user表排序的时候会相对出现的更早。
也就是说 同一个账户 要同时存在%帐号或者localhost帐号时, %帐号才起作用。
我们给 zzq帐号添加一个localhost帐号。
GRANT ALL PRIVILEGES ON *.* TO 'zzq'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
flush privileges;
然后再登录 发现可以登录了。 远程用workbench也能连接了。
这仅仅是访问权限不够 ERROR 1045 (28000): Access denied for user 'xcj'@'localhost' (using password: YES) #新加用户服务xcj,新加的用户不能马上生效 mysql> grant all on *.* to xcj@'%' identified by "xcj_passwd"; Query OK, 0 rows affected (0.04 sec) #生效新加用户xcj权限 mysql> flush privileges; Query OK, 0 rows affected (0.03 sec) [root@openfire pdf_spider]# mysql -uxcj -p'xcj_passwd' Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4593 Server version: 5.0.45-log MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> #若是还不生效,就见鬼了 |
相关文章推荐
- Mysql + keepalived 实现双主热备读写分离
- mysql数据库编码设置
- MySQL查询对NULL的处理
- mysql cluster搭建
- mysql表分区探索
- mysql自动断开连接的问题处理
- mysql远程连接数据库很慢
- MySQL 清除表空间碎片
- MySql主主(主从)同步配置详解
- Mysql AB 复制
- 解决mysql使用GTID主从复制错误问题
- MySQL主从复制结构中常用参数
- mysql主从同步(低版本)参数说明
- MySQL 清除表空间碎片
- 更改MYSQL数据库不区分大小写
- mysql 数据库导入导出
- mysql 清除relay-log文件方法详解
- 远程连接Mysql数据库问题(ERROR 2003 (HY000))
- mysql 各版本的一些命令差异
- 遇到mysql 5.5中文乱码问题