MySQL登录时出现 Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES) 的解决办法(远程授权问题)

【环境:Win10通过Hyper创建Ubuntu虚机,docker里运行mysql5.7】

症状:

-----------------------------------

远程上去,

1. docker exec -it mysql /bin/bash

2. mysql -u root -p 输入密码,可以进入mysql库。

排除了防火墙、端口等方面的问题,那很可能就是mysql远程授权方面的问题了。

解决办法:

-----------------------------------

1. 按照上面步骤进去mysql;
2. 执行授权命令
mysql> grant all privileges on *.* to [email protected]‘%‘ identified by ‘123456‘;
Query OK, 0 rows affected (0.00 sec)
3. 退出再试:  mysql> quit
4、再试登录:    mysql -u root -h 192.168.22.151 -p
  Enter password: 
 结果显示:Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
表示成功

如何给用户授权。
 
mysql> grant 权限1,权限2, ... 权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令‘;

权限1,权限2,... 权限n 代表 select、insert、update、delete、create、drop、index、alter、grant、references、reload、shutdown、process、file 等14个权限。
当权限1,权限2,... 权限n 被 all privileges 或者 all 代替时,表示赋予用户全部权限。
当 数据库名称.表名称 被 *.* 代替时,表示赋予用户操作服务器上所有数据库所有表的权限。
用户地址可以是localhost,也可以是IP地址、机器名和域名。也可以用 ‘%‘ 表示从任何地址连接。
‘连接口令‘ 不能为空,否则创建失败。

举几个例子:
mysql> grant select,insert,update,delete,create,drop on db01.employee to [email protected] identified by ‘123456′;
给来自192.168.22.151的用户vaiky分配可对数据库db01的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123456。

mysql> grant all privileges on db01.* to [email protected] identified by ‘123456′;
给来自192.168.22.151的用户vaiky分配可对数据库db01所有表进行所有操作的权限,并设定口令为123456。

mysql> grant all privileges on *.* to [email protected] identified by ‘123456′;
给来自192.168.22.151的用户vaiky分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123456。

mysql> grant all privileges on *.* to [email protected] identified by ‘123456′;
给本机用户vaiky分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123456。

MySQL登录时出现 Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES) 的解决办法(远程授权问题)

原文地址:https://www.cnblogs.com/vaiky/p/11867046.html

时间: 2024-10-13 17:42:04

MySQL登录时出现 Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES) 的解决办法(远程授权问题)的相关文章

MySQL登录时出现Access denied for user 'root'@'localhost' (using password: YES)解决方法

本人配置:系统64位win10,MySQL8.0.16 错误 :ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES) 从上面这段英文的意思来看,可以这样分析,第一:Access denied(拒绝访问):第二:using password:NO/YES.这里这个using password 的是是否输入了密码,输入了就表示YES,没有就输出NO. 根据网上查了很多资料,出现Acces

最新 mysql登录报错“Access denied for user 'root'@'localhost' (using password: NO”的处理方法

1.关闭正在运行的MySQL.2.打开DOS窗口,转到mysql\bin目录.3.输入mysqld --skip-grant-tables回车.如果没有出现提示信息,那就对了.4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录.5.输入mysql回车,如果成功,将出现MySQL提示符 <6. 连接权限数据库<use mysql; (<是本来就有的提示符,别忘了最后的分号)6.改密码:update MySQL.user set authenticati

mysql登录报错“Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES”的处理方法

使用/etc/mysql/debian.cnf文件中[client]节提供的用户名和密码: 文件内容: [client]host = localhostuser = debian-sys-maint   //用户名password = Xgsuj2n8rlvw7jUO  //密码socket = /var/run/mysqld/mysqld.sock[mysql_upgrade]host = localhostuser = debian-sys-maintpassword = Xgsuj2n8r

MySQL ERROR 1045 (28000): Access denied for user &#39;root&#39;@&#39;192.168.23.224&#39; (using password: YES)

出现如题错误可能原因: 1.密码有误.检查密码是否与 mysql.user 中 root 用户对应密码一致(我就是这个原因,被折磨整个下午和晚上) 2.用户 root 没有授权,授权命令如下: grant all on *.* to [email protected]'%' identified by 'password'; flush privileges; 3.数据库端口被墙了.关闭防火墙或者添加端口特例 MySQL ERROR 1045 (28000): Access denied for

Windows下mysql无法启动1067错误 以及 登录报错Access denied for user ‘root’@‘localhost’ (using password:YES)

Windows下mysql无法启动1067错误解决: 解决步骤: 1.  找到自己的mysql安装目录,比如,我的是D:\MySQL\MySQL Server 5.5 2.  打开my.ini文件 3.  找到 #Path to the database root这一行,将 datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"    修改为自己mysql安装目录下的  datadir="D:/MySQL/MySQL Ser

MYSQL问题解决方案:Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password:YES)

这两天在MyEclipse中开发Web项目时,连接MySQL数据库,出现问题:Access denied for user 'root'@'localhost' (using password:YES). 经查找资料发现是root帐户默认不开放远程访问权限,所以需要修改一下相关权限. 解决方案: 打开MySQL目录下的my.ini文件,在文件的最后添加一行"skip-grant-tables",保存并关闭文件.(WIN7默认安装,my.ini在C:\ProgramData\MySQL\

windows mysql提示:1045 access denied for user &#39;root&#39;@&#39;localhost&#39; using password yes 解决方案

简单粗暴 工具xwamp 路径:H:\xampp\mysql\bin\my.ini.php 打开my.ini,在[mysqld]下面添加 skip-external-lockingskip-name-resolveskip-grant-tables 停止mysql ->打开xwamp的shell可以输入命令,如下 Setting environment for using XAMPP for Windows. [email protected]-CGL9PRT h:\xampp # mysql

XMPP - Mysql ERROR 1045 (28000): Access denied for user &#39;root&#39;@&#39;l

Mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost'(using password: YSE),这个错误搞得很郁闷,仔细分析之后,知道这个报错和密码有关,可能是密码在配置mysql的时候异常,所以导致我们没有正确的密码,知道问题后,立即想到解决办法了,那就是重新设置一个密码,方法如下 1.先关闭mysql并设置密码 1 #sudo /etc/init.d/mysql stop 2 #sudo mysqld_safe

关于Linux下面msyql安装后并未设置初始密码,但是登录报错“Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: NO)”的解决方案

如上图:首先我安装mysql的时候并没有设置密码,但是就是登不进去,百度了一下,解决方案如下: 解决方案地址:http://zhidao.baidu.com/link?url=7QvuOKtfRdMTyFCsOf_6Bbb6pHGUxzyr5_afFGLiX_WAD6JJ4MCmepriWnzIo-kEAetXCLsRRhIidzxbL6zTnnJlP3HbYh2DDLZOEbOvBji 关于Linux下面msyql安装后并未设置初始密码,但是登录报错"Access denied for use