VSCode怎么配置数据库连接查询_VSCode如何使用插件连接MySQL执行SQL语句【攻略】

千浩大大_9958

千浩大大_9958

2026-03-21

215人浏览

原创

VSCode连不上MySQL主因是装错插件,应卸载仅语法高亮类插件,安装cweijan的Database Client;Docker/WSL2/M1等场景需用正确IP替代localhost;连接时须指定database字段;charset必须设为utf8mb4而非utf8。

vscode怎么配置数据库连接查询_vscode如何使用插件连接mysql执行sql语句【攻略】

VSCode 里连不上 MySQL,大概率是插件选错了

VSCode 本身不内置数据库连接能力,必须靠插件。但「Database Client」、「SQLTools」、「MySQL Syntax」这些名字太像,容易装错——MySQL Syntax 只负责高亮,Database Client(by cweijan)才真正支持连接和执行。

实操建议:

  • 卸载所有带 “syntax”、“highlight”、“formatter” 字样的插件,它们不处理连接
  • 只装 Database Client(作者 cweijan,图标是蓝色数据库+闪电),它支持 MySQL、PostgreSQL、SQLite 等,且无需额外服务端组件
  • 别碰 SQLTools:配置复杂、依赖 Node.js 运行时,新手容易卡在 SQLTools Server 启动失败上
  • 确认插件启用后,侧边栏会出现「Database」图标,点击才能进入连接管理界面

填 MySQL 连接参数时,host 和 port 别硬套 localhost:3306

本地 Docker 跑 MySQL?WSL2?Mac M1?这些场景下 localhost 在 VSCode 里往往连不通,因为 VSCode 进程运行在宿主系统,而 MySQL 实际监听的是容器或子系统 IP。

常见错误现象:Connection refused 或 Timed out after 5000 ms

实操建议:

  • Docker:用 host.docker.internal(Windows/macOS)或容器所在网络的网关 IP(Linux)代替 localhost;port 填容器映射的宿主端口(如 3307),不是容器内端口 3306
  • WSL2:在 WSL 里执行 cat /etc/resolv.conf | grep nameserver,取 nameserver 后的 IP 填入 host,port 填 MySQL 实际监听端口
  • Mac M1 + Rosetta:MySQL 若跑在 Intel 兼容层,有时需改用 127.0.0.1 而非 localhost(DNS 解析差异)
  • 密码含特殊字符(如 @、/)?URL 编码一下,比如 my@pwd → my%40pwd

执行 SQL 报错 “No database selected”,不是没连上,是没指定 schema

成功连接 MySQL 并不等于自动选中某个库。Database Client 默认不设置 database 参数,执行 SELECT * FROM users; 就会报这个错,和命令行里不执行 USE mydb; 是一个道理。

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载

实操建议:

  • 创建连接时,在「Database」字段明确填入库名(如 myapp_dev),不能为空
  • 如果想临时切换库,右键已连接节点 → 「Change Database」,选目标库,否则新查询仍走默认库(或无库)
  • 建表语句里带库前缀(如 CREATE TABLE myapp_dev.logs (...))可以绕过,但不推荐——耦合重、迁移麻烦
  • 注意:修改连接配置后要右键该连接 → 「Reconnect」,不是保存就生效

中文乱码、emoji 插入失败,根源在 connection charset 没对齐

即使 MySQL 服务端 character_set_server=utf8mb4,VSCode 插件若用 utf8(MySQL 的旧别名,实际是 utf8mb3)建连接,就会丢 emoji、生僻字,甚至报 Incorrect string value。

实操建议:

  • 连接配置里找 charset 或 collation 字段,强制设为 utf8mb4(不是 utf8)
  • 没有显式 charset 选项?在「Advanced」或「Connection String」里补全:?charset=utf8mb4&collation=utf8mb4_unicode_ci
  • 验证是否生效:连上后执行 SHOW VARIABLES LIKE 'character\_set\_%';,重点关注 character_set_client、character_set_connection、character_set_results 三者都应为 utf8mb4
  • 如果表本身是 utf8 编码,光改连接没用——得 ALTER TABLE t CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

最常被忽略的一点:改完连接参数后,旧的查询窗口不会自动继承新编码,得新开一个 Query Tab 才生效。

相关专题

更多
数据分析工具有哪些
数据分析工具有哪些

数据分析工具有Excel、SQL、Python、R、Tableau、Power BI、SAS、SPSS和MATLAB等。详细介绍:1、Excel,具有强大的计算和数据处理功能;2、SQL,可以进行数据查询、过滤、排序、聚合等操作;3、Python,拥有丰富的数据分析库;4、R,拥有丰富的统计分析库和图形库;5、Tableau,提供了直观易用的用户界面等等。

2023.10.12

4523

8

SQL中distinct的用法
SQL中distinct的用法

SQL中distinct的语法是“SELECT DISTINCT column1, column2,...,FROM table_name;”。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.27

951

4

SQL中months_between使用方法
SQL中months_between使用方法

在SQL中,MONTHS_BETWEEN 是一个常见的函数,用于计算两个日期之间的月份差。想了解更多SQL的相关内容,可以阅读本专题下面的文章。

2024.02.23

1189

5

SQL出现5120错误解决方法
SQL出现5120错误解决方法

SQL Server错误5120是由于没有足够的权限来访问或操作指定的数据库或文件引起的。想了解更多sql错误的相关内容,可以阅读本专题下面的文章。

2024.03.06

6501

10

sql procedure语法错误解决方法
sql procedure语法错误解决方法

sql procedure语法错误解决办法:1、仔细检查错误消息;2、检查语法规则;3、检查括号和引号;4、检查变量和参数;5、检查关键字和函数;6、逐步调试;7、参考文档和示例。想了解更多语法错误的相关内容,可以阅读本专题下面的文章。

2024.03.06

3263

4

oracle数据库运行sql方法
oracle数据库运行sql方法

运行sql步骤包括:打开sql plus工具并连接到数据库。在提示符下输入sql语句。按enter键运行该语句。查看结果,错误消息或退出sql plus。想了解更多oracle数据库的相关内容,可以阅读本专题下面的文章。

2024.04.07

6460

11

sql中where的含义
sql中where的含义

sql中where子句用于从表中过滤数据,它基于指定条件选择特定的行。想了解更多where的相关内容,可以阅读本专题下面的文章。

2024.04.29

8861

6

sql中删除表的语句是什么
sql中删除表的语句是什么

sql中用于删除表的语句是drop table。语法为drop table table_name;该语句将永久删除指定表的表和数据。想了解更多sql的相关内容,可以阅读本专题下面的文章。

2024.04.29

1210

5

sql中删除一列的命令是什么
sql中删除一列的命令是什么

在sql中,使用alter table语句可以删除一列,语法为:alter table table_name drop column column_name。想了解更多sql的相关内容,可以阅读本专题下面的文章。

2024.04.29

1052

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程