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

连接成功

相关推荐
AC赳赳老秦3 小时前
文旅AI趋势:DeepSeek赋能客流数据,驱动2026智慧文旅规模化跃迁
人工智能·python·mysql·安全·架构·prometheus·deepseek
JiaHao汤8 小时前
MySQL SQL 性能优化实战指南
sql·mysql·性能优化
念越9 小时前
MySQL报错:Column count doesn‘t match value count at row 1 解决方案(超详细)
数据库·mysql
9523611 小时前
MySQL存储过程和触发器
数据库·mysql
x***r15111 小时前
phpstudy_x64_8.1.1.3安装教程(含Apache/MySQL启动与端口修改)
数据库·mysql·apache
cjl_85200811 小时前
MySQL-递归查询
数据库·windows·mysql
白太岁12 小时前
Muduo:(2) EPollPoller 实现 epoll 封装、 fd 事件监听与事件通知
网络·c++·网络协议·tcp/ip
laplace012313 小时前
第二章 字符串和文本 下
服务器·数据库·python·mysql·agent
念越13 小时前
MySQL 联合查询执行原理:多表笛卡尔积
数据库·mysql
tod11316 小时前
Reactor反应堆模式
网络·网络协议·tcp/ip·reactor·多路转接·tcpdump