本地 SQL Server 容器

借助 Visual Studio Code 的 MSSQL 扩展中的本地 SQL Server 容器功能,无需手动运行 Docker 命令即可创建和管理 SQL Server 容器。 可以直接从 “连接” 视图中部署、启动、停止和删除容器,从而使用生产环境中提供的相同数据库引擎,为工作负荷原型、开发和测试工作负荷提供了一种简单的方式。

显示本地容器向导第一部分动画的屏幕截图。

默认情况下,容器向导使用 SQL Server 2025 (17.x),其中包括 AI 就绪的功能,例如矢量数据类型和 JSON 函数。 还可以根据测试需求从 SQL Server 2022(16.x)、SQL Server 2019(15.x)或 SQL Server 2017 (14.x)中进行选择。

显示本地容器向导第二部分动画的屏幕截图。

注释

只要 Docker Desktop(或等效的)在 Linux 容器模式下运行,本地 SQL Server 容器体验就适用于 macOS、Windows 和 Linux。

特点

MSSQL 扩展中的本地 SQL Server 容器提供以下功能:

  • 在不编写 Docker 命令的情况下创建本地 SQL Server 容器。
  • 从多个 SQL Server 版本(SQL Server 2025 (17.x) (默认值)、SQL Server 2022 (16.x)、SQL Server 2019 (15.x) 和 SQL Server 2017 (14.x)中进行选择。
  • 自定义容器名称、主机名和端口。
  • 在部署之前自动检查 Docker 安装和运行状态。
  • 如果已使用 1433,则自动分配可用端口。
  • 在容器重启时自动连接和保留连接设置。
  • 从“连接”视图中的上下文菜单中管理容器生命周期(启动、停止、删除)。
  • 与所有核心 MSSQL 扩展功能一起使用,包括对象资源管理器、表设计器、架构设计器、查询编辑器和 GitHub Copilot。

重要

本地容器 仅用于开发。 不支持生产部署。

创建本地容器

若要创建本地 SQL Server 容器,请执行以下作:

  1. “连接” 视图中,从菜单中选择“ 创建本地 SQL 容器 ”选项。

    显示如何在 MSSQL 扩展中创建本地 SQL Server 容器选项的屏幕截图。

  2. 查看 “概述”屏幕,了解您可以从本地 SQL Server 容器体验中期待什么。

    准备就绪后,选择 “开始” 以继续。

    本地 SQL Server 容器部署概述屏幕的屏幕截图,其中包含有用的链接和“入门”按钮。

  3. MSSQL 扩展在部署之前自动检查 Docker:

    • 如果未安装 Docker,将显示一条包含安装链接的消息。 在继续之前,您必须安装它。
    • 如果已安装 Docker 但未运行,系统会提示启动它。 如果启动 Docker 失败,请重试或取消。

    满足所有先决条件后,选择“ 下一步 ”继续部署。

    Docker 先决条件签入 MSSQL 扩展的屏幕截图。

  4. “部署设置 ”面板中:

    1. 选择 SQL Server 版本 (SQL Server 2025 (17.x) 默认处于选中状态。
    2. sa帐户输入密码。
    3. 输入连接配置文件的名称(可选)。
    4. (可选)完成高级选项:
      • 容器名称
      • 港口
      • 主机名
    5. 接受许可条款。
    6. 选择“ 创建容器”。

    容器设置配置窗体的屏幕截图。

SQL 容器部署的工作原理

选择 “创建容器”后,扩展会为你处理所有内容:

  • 拉取所选 SQL Server 映像(如果尚未缓存)。
  • 使用所选设置创建 SQL Server 容器。
  • 监视日志,以验证是否已完全恢复并准备好所有数据库。
  • 创建连接配置文件并连接到容器。

部署完成后,容器将启动,MSSQL 扩展会自动连接到新数据库。

管理容器

若要管理容器,请在 “连接” 视图中右键单击连接配置文件名称。 在上下文菜单中,你可以:

启动已停止的容器

该扩展检查 Docker 是否在启动容器之前正在运行。 如果 Docker 未运行,系统会提示启动它。

停止正在运行的容器

此选项在保留数据库状态时关闭容器。 你可以随时从同一菜单重新启动它。

删除容器

此选项永久删除容器及其数据。 在继续作之前,系统会要求你进行确认。

显示如何在 MSSQL 扩展中管理容器生命周期的屏幕截图。

重要

删除容器也会删除其关联的连接配置文件。

自动重新连接体验

如果在重新连接时容器或 Docker 未运行,扩展会提示启动它们。 无需手动进行故障排除。

支持的方案

可以将本地 SQL Server 容器与 MSSQL 扩展的所有核心功能一起使用:

  • 查询编辑器和 IntelliSense
  • 表设计器和架构设计器
  • GitHub Copilot
  • 对象浏览器和连接管理

此功能使本地 SQL Server 容器非常适合:

  • 为新功能制作原型
  • 测试模式更改
  • 在隔离环境中运行自动测试
  • 试验 SQL Server 2025 (17.x) 功能

局限性

  • 需要安装并运行 Docker Desktop(或等效)。
  • 仅支持基于 Linux 的 SQL Server 容器(SQL Server 2017 (14.x) 及更高版本)。
  • 不支持 Podman。
  • 内置向导不支持备份和还原、群集、脚本初始化或 Docker Compose。 可以使用外部工具或命令手动执行这些任务。
  • 严格设计用于本地开发。 不用于生产用途。
  • 必须解决 Docker 安装、配置或运行时的任何问题。
  • 确保计算机有足够的资源,或者通过 Docker 设置调整 Docker 的内存分配和容器的资源限制,以确保性能稳定。
  • 内存要求:
    • SQL Server 至少需要 2 GB 内存才能启动基于 Linux 的容器。
    • 默认情况下,Linux 上的 SQL Server 使用大约 80% 可供容器使用的内存。