发布于2026-07-06 阅读(0)
扫一扫,手机访问
VSCode本身不提供直接连接数据库的功能,所有操作全靠插件“借力”。而且MySQL和Redis的底层机制、认证方式、网络要求几乎是两套体系,千万别拿同一套配置逻辑去套用——那样肯定会出问题。

caching_sha2_password 认证协议是否卡住MySQL 8.0及以上版本默认采用 caching_sha2_password 认证,但不少老旧的插件(比如已经停止维护的 vscode-mysql)只认 mysql_native_password。一旦碰到这种情况,就会直接报错“Client does not support authentication protocol”。
解决方案其实很清晰:
Database Client(作者 cweijan),它原生支持 caching_sha2_password,输入host、port、user、password,点测试连接就能通过SQLTools 搭配 SQLTools MySQL Driver(作者 mtxr),但注意装完之后一定要重启VSCode,否则驱动不会自动加载ALTER USER 'dev'@'%' IDENTIFIED WITH mysql_native_password BY 'xxx'; FLUSH PRIVILEGES;redis-cli 或host填错了VSCode上的Redis插件(比如Redis Explorer)其实不是独立客户端,它本质上是调用系统PATH里的 redis-cli 来发送命令。要是没装或者路径不对,连图标都点不亮。
几个关键检查点:
redis-cli --version,确认能正常使用。不行就安装:macOS用brew install redis,Ubuntu用sudo apt install redis-toolslocalhost。macOS和Windows要填 host.docker.internal,Linux填宿主机真实IP"password": "",要么直接删掉该字段6379,不是 6380或63790。另外Redis Stack的HTTP端口(8080)不能用来直连数据库VSCode不会自动关联 .sql 文件和某个数据库。右键点击“执行”,结果弹出“No active connection”——这是最常见的误操作。
具体操作差异如下:
Database Client:打开SQL文件后,右上角会出现连接下拉框,必须手动选中一个已配置的MySQL连接SQLTools:需要先按 Ctrl+Shift+P,输入 SQLTools: Connect to Database 激活连接,再执行Ctrl+Enter,只会运行光标所在的那一行。想执行整个文件,得右键选择 SQLTools: Run Current FileTEXT、JSON)默认会被截断,右键单元格选 Copy Cell Value 才能拿到完整内容插件装对了,配置也填对了,可还是连不上?那八成是服务层或网络层出了问题。
几个高频陷阱:
CREATE USER 'dev'@'%' IDENTIFIED BY 'xxx'; GRANT ALL ON *.* TO 'dev'@'%'; FLUSH PRIVILEGES;127.0.0.1,但插件用 localhost 解析到了IPv6的 ::1,结果直接超时。统一改用 127.0.0.1 就能避开这个坑3306 / 6379 端口。Linux环境还要检查 ufw 或 iptables 是否拦截protected-mode yes,又没有配置 bind 或 requirepass,会直接拒绝所有外部连接
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8