在 WSL2 环境下使用 VSCode 和 SQLTools 运行 SQL
在 WSL2 环境中使用 VSCode 结合 SQLTools 插件可以极大地提升编写和执行 SQL 的效率。本文将详细介绍如何通过安装 SQLTools 插件、连接 MySQL、更改 MySQL 认证方式,并运行 SQL 文件的具体流程。
步骤 1:安装 WSL2 和 MySQL
首先,确保你已经在 Windows 上启用了 WSL2 并安装了一个 Linux 发行版(如 Ubuntu)。
-
启用 WSL2:
打开 PowerShell 并运行以下命令来启用 WSL2:wsl --install
重启计算机后,你将自动安装 Ubuntu 作为 Linux 发行版。
-
安装 MySQL:
进入 WSL2 的 Ubuntu 环境,执行以下命令来安装 MySQL:sudo apt update sudo apt install mysql-server
-
启动 MySQL 服务:
sudo service mysql start
步骤 2:安装 VSCode 和 SQLTools 插件
2.1 安装 VSCode
确保你已经在 Windows 上安装了 Visual Studio Code,可以从 VSCode 官网下载并安装。
2.2 安装 SQLTools 插件
- 打开 VSCode,点击左侧的扩展图标。
- 在搜索框中输入
SQLTools
,找到 SQLTools 插件并点击 安装。
2.3 配置 SQLTools 插件连接 MySQL
- 打开 VSCode,点击左侧 SQLTools 图标。
- 点击 新建连接,选择 MySQL 作为数据库类型。
- 输入以下信息:
- 主机:
localhost
- 用户名:
root
- 主机:
注意:最好用root,自己建的新用户可能会导致用户权限问题
- 密码:稍后设置(见步骤 3)
- 端口:
3306
步骤 3:更改 MySQL root 用户的认证方式
这步是重点,按照之前博客的安装步骤失败就是失败在这一步
报错为:
Error opening connection Access denied for user ‘root’@‘localhost’
-来源SQLTools
在 MySQL 8.0 中,默认的身份验证插件是 caching_sha2_password
,可能会导致一些客户端(如 SQLTools)连接时出现问题。你需要将 root
用户的认证方式改为更广泛兼容的 mysql_native_password
。
-
在 WSL2 终端中,登录 MySQL:
sudo mysql
-
执行以下命令更改
root
用户的认证方式,并设置密码:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_new_password';
将
your_new_password
替换为你希望设置的密码。 -
刷新权限:
FLUSH PRIVILEGES;
-
退出 MySQL:
exit;
步骤 4:连接 SQLTools 到 MySQL
- 返回到 VSCode 的 SQLTools 插件中,选择你在步骤 2.3 中配置的 MySQL 连接。
- 输入你在步骤 3 中设置的
root
用户密码。 - 点击 测试连接,确认连接成功。
步骤 5:创建并运行 SQL 文件
5.1 创建 SQL 文件
-
在 VSCode 中,创建一个新文件并保存为
example.sql
,确保文件扩展名为.sql
。 -
编写你的 SQL 语句,例如:
CREATE DATABASE example_db; USE example_db; CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100), email VARCHAR(100) ); INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');
5.2 执行 SQL 文件
- 在 SQLTools 中,选择你刚刚配置的 MySQL 连接。
- 打开你创建的
example.sql
文件。 - 点击右键,然后选择 Run on Active Connection,或者使用快捷键
Ctrl + Alt + Enter
(macOS 为Cmd + Alt + Enter
)运行文件中的 SQL 语句。 - SQLTools 将在下方的输出窗口中显示执行结果。
5.3 检查结果
执行完 SQL 文件后,结果或错误信息将显示在 SQLTools 的输出面板中。你可以查看表是否成功创建、数据是否插入成功等信息。
总结
通过 WSL2 环境、VSCode 和 SQLTools 插件,你可以轻松编写和执行 SQL 文件。通过更改 MySQL root
用户的认证方式并配置 SQLTools,你可以在 Windows 和 Linux 环境间无缝切换,并利用 VSCode 的强大编辑功能和快捷键快速执行 SQL 查询。这种方法适用于日常开发和学习数据库的场景,非常高效便捷。