mysql拒绝连接

出现 "1698 - Access denied for user 'root'@'192.168.10.52'" 错误,通常是因为 MySQL 的 root 用户默认采用了 "auth_socket" 认证方式,仅允许本地通过 socket 连接,不支持远程密码认证。解决方法如下:

步骤 1:修改 root 用户认证方式

登录数据库

复制代码
mysql -u root -p

使用命令并更改身份验证方法以root ALTER USER 身份登录 MySQL :

% 是允许所有IP。

复制代码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;

再为远程连接授权:

复制代码
CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的新密码';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

步骤 2:重启 MySQL 服务

执行systemctl restart mysql

之后在 Navicat 中使用新设置的密码重新连接即可。


如果出现报错,先看是不是已经创建好root了。已经建好了,直接授权就行。

复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
相关推荐
2401_882273725 小时前
pattern属性在旧版Android浏览器无效怎么办_手动验证补充【操作】
jvm·数据库·python
小的~~5 小时前
Milvus会存在SQL注入攻击吗?
数据库·sql·milvus
uElY ITER5 小时前
MySQL官网驱动下载(jar包驱动和ODBC驱动)【详细教程】
数据库·mysql
NCIN EXPE5 小时前
MySQL--》理解锁机制中的并发控制与优化策略
数据库·mysql·oracle
Nightwish56 小时前
Linux随记(三十)
linux·运维·mysql·ambari
AI进化营-智能译站6 小时前
ROS2 C++开发系列11-VS Code一键生成Doxygen注释|让ROS2节点文档自动跟上代码迭代
java·数据库·c++·ai
村头的猫6 小时前
JWT 令牌的工作原理,结构和签名验证
前端·数据库·经验分享·微服务
许彰午6 小时前
CacheSQL(四):CacheSQLClient——用一张路由表实现水平扩展
java·数据库·缓存·系统架构·政务
Lyyaoo.6 小时前
缓存穿透/雪崩/击穿
数据库·缓存·oracle
许彰午6 小时前
CacheSQL(三):双 HTTP 引擎与 SQL 查询——接口抽象的价值
java·数据库·sql·缓存