Navicat 不支持 Redis 连接,1045 是 MySQL 认证错误码;因其仅原生支持关系型数据库,误选 MySQL 类型连 Redis 会导致协议错配,Redis 实际返回 NOAUTH 或 ERR,而非 1045;应改用 redis-cli、Another Redis Desktop Manager 等专用工具。
navicat 不支持 redis 连接,报 1045 错误说明你连错了服务——这不是 redis 的错误码,而是 mysql 的认证拒绝码。
为什么 Navicat 连 Redis 会显示 1045?
因为 Navicat(截至 2026 年最新版)**原生只支持 MySQL、PostgreSQL、Oracle、SQL Server 等关系型数据库**,它根本不识别 Redis 协议。当你在 Navicat 中新建连接时误选了 “MySQL” 类型,却填入 Redis 的地址(如 localhost:6379),Navicat 就会尝试用 MySQL 客户端协议发起握手;Redis 服务收到非法协议包后可能静默拒绝或返回乱码,而 Navicat 在超时/解析失败后,常错误复用其 MySQL 错误模板,抛出熟悉的 Access denied for user 'root'@'localhost' (using password: YES) ——即 1045 错误。
- Redis 自身没有
user表、不校验'root'@'localhost'这类账号结构 - Redis 的认证错误是
NOAUTH Authentication required或ERR invalid password,绝不会返回1045 - 真正能触发
1045的,只有 MySQL 服务端在权限校验链中某环失败(host 不符、密码错、plugin 不匹配等)
该用什么工具连 Redis?
换对工具,问题当场消失:
- 命令行首选:
redis-cli -h localhost -p 6379 -a "yourpass"(注意:生产环境避免明文传-a,改用redis-cli --askpass) - 图形化推荐:
Another Redis Desktop Manager(开源免费,Win/macOS/Linux 全平台,自动识别 RESP 协议) - IDE 插件:JetBrains 系列(IntelliJ/PyCharm)装
Redis Explorer插件,直连无误 - Web 管理:若已部署
RedisInsight(官方出品),浏览器访问http://localhost:8001即可
如果坚持要在 Navicat 里“试连”,怎么快速验证是不是连错了?
不用猜,三步定位:
- 打开终端,执行:
telnet localhost 6379—— 若通,说明端口开着且是 Redis(会看到Connected to localhost+ 乱码欢迎包);若提示Connection refused,说明 Redis 没启,或端口被占 - 再执行:
nc -zv localhost 3306—— 若通,说明 MySQL 正在监听,此时 Navicat 报1045才是真 MySQL 问题 - 检查 Navicat 连接配置页顶部的「连接类型」下拉框:必须是
MySQL才可能出1045;如果是Redis选项——那说明你用的是非官方魔改版或插件,不在标准支持范围内,行为不可靠
真正容易被忽略的点:很多人在 Docker 或云服务器上部署 Redis 后,习惯性把 MySQL 的连接配置复制粘贴过去,连的还是 3306 端口、选的还是 MySQL 类型——这时 1045 是个善意的“错觉提醒”,告诉你协议和目标根本对不上。


















