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连接,校验是否解决问题:

连接成功

相关推荐
夜雪一千18 小时前
MySQL 全局锁是什么?原理、风险、备份踩坑完整实战
android·mysql·adb
我爱cope20 小时前
【计算机网络 | 网络层1:网络层的职责:IP 协议究竟解决了什么问题?】
网络·tcp/ip·计算机网络
程序员夏洛1 天前
MySQL 中 count(*)、count(1) 和 count(字段名) 有什么区别?
数据库·mysql
l1258651 天前
# RAG向量数据库优化实战:HNSW索引调参与生产级性能设计
数据库·python·mysql·langchain
梦Arrebol1 天前
Mysql内容及相关实验
数据库·mysql
OceanWaves19931 天前
mysql 8.0.32 磁盘爆满,清理从库日志
数据库·mysql
clorinda1 天前
MySQL 入门笔记:DQL 基础查询与常用函数
adb
霸道流氓气质1 天前
MySQL 大表 DDL 变更 — 原理、方案与实践
android·数据库·mysql
JavaPub-rodert1 天前
Go 后台如何同时兼容 MySQL、PostgreSQL、SQLite 和 SQL Server?从 ShiyuAdmin 看 GORM 多数据库适配
数据库·mysql·postgresql·golang·javapub·王仕宇
Code额1 天前
基于 SQLAlchemy 2.x,面向 MySQL 数据库的从入门到精通实战教程(2)
数据库·sql·mysql·adb·ai