VSCode需安装SQLTools及MySQL驱动扩展才能连接MySQL;配置需手动编辑sqltools.json,指定host、port等字段并处理MySQL 8+认证问题;查询通过右键命令执行,结果在SQLTools Results面板显示。

VSCode 本身不内置数据库管理功能,必须依赖扩展;直接装 MySQL 或 SQLTools 才能连 MySQL,否则写 SQL 文件也执行不了查询。
安装 SQLTools 及 MySQL 驱动扩展
这是最稳定、支持多数据库的方案。仅装 SQLTools 主扩展不够,必须额外安装对应驱动:
- 在 VSCode 扩展市场搜索并安装
SQLTools - 再搜索安装
SQLTools MySQL/MariaDB Driver(注意名称含 “Driver”) - 重启 VSCode,否则驱动不生效 —— 这是新手最常卡住的一步
- 不推荐用老版本的
MySQL单一扩展(如vscode-mysql),它已停止维护,不支持 MySQL 8+ 的默认认证插件caching_sha2_password
配置 MySQL 连接信息(JSON 格式)
连接不是填个表单就完事,SQLTools 要求手动编辑 sqltools.json 配置文件,路径通常为:~/.sqltools/config.json(macOS/Linux)或 %USERPROFILE%\.sqltools\config.json(Windows)
- 必须指定
host、port、database、username、password - 若 MySQL 8+ 报错
Client does not support authentication protocol,需在连接配置中加"authPlugin": "mysql_native_password" -
database字段可为空,但留空后首次执行USE db_name;才能切换库,不能直接在连接里选库
执行查询:从打开 SQL 文件到看到结果
连接成功后并不自动打开查询界面,得靠文件触发:
- 新建一个
query.sql文件,内容可以只是SELECT 1; - 右键编辑器 →
SQLTools: Run Current Query,或按快捷键Ctrl+Shift+P→ 输入该命令 - 首次运行会弹出连接选择框,选你配好的那个连接;之后右上角状态栏会显示当前连接名
- 结果以表格形式展示在下方
SQLTools Results面板,支持复制整列、导出 CSV —— 但不支持点击跳转到表结构
常见失败场景和绕过方式
连不上不是密码错就是协议/权限问题,别急着重装:
- 报错
Access denied for user:确认 MySQL 用户有远程访问权限(CREATE USER 'u'@'%' IDENTIFIED BY 'p'; GRANT ALL ON *.* TO 'u'@'%'; FLUSH PRIVILEGES;) - 报错
Connection refused:检查 MySQL 是否监听0.0.0.0:3306(而非127.0.0.1),查看bind-address配置项 - 查询返回空结果却不报错:可能是没激活连接 —— 看右下角状态栏是否显示连接名,没显示说明当前文件没绑定连接
- 想看表结构?
DESCRIBE table_name;可用,但SHOW CREATE TABLE结果会被截断;复杂 DDL 建议还是回命令行或 DBeaver
真正麻烦的不是连上,而是连接配置散落在 JSON 文件里、没有图形化编辑器、错误提示不指向具体字段 —— 这些都得手动核对,少一个引号或逗号就整个配置失效。










