DBeaver连接MySQL提示Access denied for user ‘‘@‘ip‘ (using password: YES)


问题描述

客户端root账号连接mysql时,远程连接不上


原因分析:

1、mysql的服务状态

2、登录账号的host是否为%,允许远程任意地址连接

3、在需要密码登录的前提下:登录账号的host为%的密码是否设置


解决方案:

1、核实MySQL服务状态:

复制代码
systemctl status mysql

MySQL服务运行正常,若MySQL已经没有启动,重启MySQL服务器:

复制代码
systemctl restart mysql

2、从服务器登录进入数据库:

复制代码
bin/mysql -u root -p

输入密码登录进去后

3、授与权限,并更新权限:

复制代码
CREATE USER 'root'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

刷新:

复制代码
FLUSH PRIVILEGES;

4、查看结果是不是root用户仅允许本地 localhost 登录,是的话,就要修改它的host为%,表示任意IP地址都可以登录:

复制代码
use mysql;
select user, host from user;

可以看到root用户有一个%,代表全部主机都可以使用root用户通过外网连接数据库,但是连接依然出现问题Access denied for user 'root'@'ip' (using password: YES)

5、root账号的任意地址登录的密码不对,在配置mysql的时候,遗留了host的%的密码调整为test@mysql,导致不对:

复制代码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'test@mysql';

6、DBeaver连接,校验是否解决问题:

连接成功

相关推荐
light_forest18 小时前
tcp_connect_v4接口
java·网络·tcp/ip
云外天ノ☼18 小时前
待办事项全栈实现:Vue3 + Node.js (Koa) + MySQL深度整合,构建生产级任务管理系统的技术实践
前端·数据库·vue.js·mysql·vue3·koa·jwt认证
⑩-19 小时前
如何保证Redis和Mysql数据缓存一致性?
java·数据库·redis·mysql·spring·缓存·java-ee
Matana11119 小时前
Vmware中主机ip a没有ip地址
服务器·网络·tcp/ip
wangjialelele20 小时前
MySQL操作库
数据库·mysql·oracle
2501_9388101120 小时前
共享IP的定义
服务器·网络·tcp/ip
C++chaofan21 小时前
MyBatis - Plus学习笔记
java·spring boot·笔记·后端·mysql·架构·mybatis
爱吃汽的小橘21 小时前
MIPI DSI和MIPI Tx IP 的建立
网络·网络协议·tcp/ip
蜗牛^^O^1 天前
OSI七层模型与TCP/IP 四层模型
网络·网络协议·tcp/ip
川石课堂软件测试1 天前
Python | 高阶函数基本应用及Decorator装饰器
android·开发语言·数据库·python·功能测试·mysql·单元测试