借助 Azure MCP 服务器,可以使用自然语言提示管理Azure SQL 数据库资源,包括创建、删除、更新和列出数据库。
Azure SQL 数据库是Microsoft Azure云中提供高可用性、可伸缩性和安全性的关系数据库服务。 有关详细信息,请参阅 Azure SQL 数据库 文档。
Note
Tool 参数:Azure MCP 服务器工具为完成任务所需的数据定义参数。 其中一些参数特定于每个工具,如下所示。 其他参数是全局参数,由所有工具共享。 有关详细信息,请参阅 工具参数。
创建 SQL 数据库
在现有SQL Server上创建新的Azure SQL 数据库。 创建具有可配置性能层、大小限制和其他设置的数据库。 它返回新创建的数据库信息,包括配置详细信息。
示例提示包括:
- “在服务器”my-sql-server“中使用 SKU 层 Premium 创建名为”my-database“的 SQL 数据库。
- “在服务器”my-sql-server“上的资源组”my-resource-group“中创建名为”products-db“的新 SQL 数据库。
- “在服务器”my-sql-server“中创建最大大小为 2GB 的 SQL 数据库”reports-db”。
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 数据库名称 | Required | Azure SQL 数据库 名称。 |
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server 的名称。 |
| Collation | 可选 | 数据库的排序规则(例如 SQL_Latin1_General_CP1_CI_AS)。 |
| 弹性池名称 | 可选 | 要向其分配数据库的弹性池的名称。 |
| 最大大小字节数 | 可选 | 数据库的最大大小(以字节为单位)。 |
| 读取刻度 | 可选 | 数据库的读取缩放选项(启用或禁用)。 |
| SKU 容量 | 可选 | 数据库的 SKU 容量(DTU 或 vCore 计数)。 |
| SKU 名称 | 可选 | 数据库的 SKU 名称(例如,、BasicS0、P1GP_Gen5_2)。 |
| SKU 层级 | 可选 | 数据库的 SKU 层(例如,、BasicStandard、PremiumGeneralPurpose)。 |
| 区域冗余 | 可选 | 指示数据库是否应是区域冗余的。 |
破坏性: ✅ |幂等: ❌ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌
创建SQL Server
在指定的资源组和位置创建新的Azure SQL服务器。 服务器配置了提供的管理员凭据和可选设置。 该命令返回创建的服务器及其属性,包括完全限定的域名。
示例提示包括:
- “使用管理员登录名”sqladmin“在位置”eastus“中创建名为”my-sql-server“的Azure SQL服务器。
- 在资源组“my-resource-group”中使用您的管理员密码设置一个名为“prod-sql-server”的新 SQL Server。
- “在位于”westus2“的资源组”dev-resource-group“中创建名为”dev-sql-server“的 SQL Server。
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 管理员登录 | Required | SQL Server 的管理员登录名。 |
| 管理员密码 | Required | SQL Server 的管理员密码。 |
| 位置 | Required | 创建 SQL Server 的 Azure 区域。 |
| 资源组 | Required | Azure资源组的名称,该资源组是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server 名称。 |
| 公用网络访问 | 可选 | 是否为 SQL Server 启用公用网络访问(Enabled 或 Disabled)。 |
| 版本 | 可选 | 要创建的SQL Server版本(目前仅支持 12.0)。 |
破坏性: ✅ |幂等: ❌ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌
创建SQL Server防火墙规则
为 Azure SQL Server创建防火墙规则。 防火墙规则控制允许哪些 IP 地址连接到SQL Server。 可以指定单个 IP 地址(通过将起始 IP 和结束 IP 设置为相同值)或一系列 IP 地址。 此命令返回创建防火墙规则及其属性。
示例提示包括:
- “为资源组”my-resource-group“中的SQL Server”my-sql-server“创建名为”allow-office-ip“的防火墙规则。
- “为SQL Server”my-sql-server“添加防火墙规则,允许 IP 范围”203.0.113.0“更改为”203.0.113.255”。
- “为 Azure SQL Server”prod-sql-server“创建新的防火墙规则,其 IP 限制从”198.51.100.0“更改为”198.51.100.255”。
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 终止 IP 地址 | Required | 防火墙规则范围的结束 IP 地址。 |
| 防火墙规则名称 | Required | 防火墙规则的名称。 |
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server 名称。 |
| 起始 IP 地址 | Required | 防火墙规则范围的起始 IP 地址。 |
破坏性: ✅ |幂等: ❌ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌
删除 SQL 数据库
从 Azure SQL Server中删除数据库。 此幂等操作从服务器中删除指定的数据库,如果 Deleted = false 数据库不存在或 Deleted = true 已成功删除,则返回该数据库。
示例提示包括:
- 从服务器 'my-sql-server' 中删除 SQL 数据库 'my-database'。
- “从服务器”my-sql-server“上的资源组”my-resource-group“中删除数据库”old-database”。
- “从 SQL Server 'dev-sql-server' 中删除数据库 'test-database'。
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 数据库名称 | Required | Azure SQL 数据库 名称。 |
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server 名称。 |
破坏性: ✅ |幂等: ✅ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌
删除SQL Server
从Azure订阅中删除指定的Azure SQL服务器,包括所有关联的数据库。 此操作永久删除所有服务器数据,并且无法撤消。 使用 force 绕过确认。
示例提示包括:
- 删除资源组“my-resource-group”中的 SQL Server “my-sql-server”。
- 从我的资源组中删除 Azure SQL 服务器「old-sql-server」。
- 在不需确认的情况下永久删除 SQL Server 'test-sql-server'。
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server名称。 |
| 力 | 可选 | 在没有确认提示的情况下强制删除服务器。 |
破坏性: ✅ |幂等: ✅ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌
删除SQL Server防火墙规则
从 Azure SQL Server中删除防火墙规则。 此操作将删除指定的防火墙规则,该规则可能会限制此规则以前允许的 IP 地址的访问。 操作是幂等的;如果该规则不存在,则不返回错误。
示例提示包括:
- 从 SQL服务器“my-sql-server”中的资源组“my-resource-group”中删除防火墙规则“allow-office-ip”。
- “删除资源组”my-resource-group“中 SQL Server”my-sql-server“的防火墙规则”temp-access-rule”。
- “从我的 SQL Server ‘dev-sql-server’ 中删除防火墙规则 ‘old-firewall-rule’。”
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 防火墙规则名称 | Required | 防火墙规则的名称。 |
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server名称。 |
破坏性: ✅ |幂等: ✅ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌
获取Azure SQL 数据库详细信息
检索有关SQL Server中Azure SQL数据库的信息。 可以按名称显示特定Azure SQL数据库的详细信息,或列出指定SQL Server中的所有Azure SQL数据库。 此工具提供数据库信息,包括配置详细信息和当前状态。
示例提示包括:
- “列出资源组”my-rg“中服务器”my-server“的所有数据库。
- “获取资源组”my-rg“和服务器”my-server“中Azure SQL数据库”my-database“的详细信息。
- “在服务器”my-server“中显示资源组”my-rg“中的所有Azure SQL数据库。
- “从服务器”my-server“中的资源组”my-rg“检索Azure SQL数据库”my-database”。
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server 名称。 |
| 数据库名称 | 可选 | Azure SQL 数据库 的名称。 |
破坏性: ❌ |幂等: ✅ |开放世界: ❌ |只读: ✅ |机密: ❌ |本地必需: ❌
获取弹性池列表
列出 Azure SQL Server中的所有 SQL 弹性池,包括其 SKU、容量、状态和数据库限制。 可以查看弹性池清单、检查池利用率、比较池配置,或查找用于数据库放置的可用池。 该工具返回包含完整配置详细信息的弹性池的 JSON 数组。
示例提示包括:
- “列出资源组”my-resource-group“中 SQL Server”my-sql-server“中的所有弹性池。
- 请显示资源组“prod-resource-group”中 SQL 服务器“prod-sql-server”的弹性池。
- “资源组”dev-resource-group“下的 SQL Server”dev-sql-server“中存在哪些弹性池?
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server 名称。 |
破坏性: ❌ |幂等: ✅ |开放世界: ❌ |只读: ✅ |机密: ❌ |本地必需: ❌
获取防火墙规则列表
检索 Azure SQL Server的防火墙规则列表。 此命令检索为指定的 SQL Server 配置的所有防火墙规则,包括其 IP 地址范围和规则名称。 它返回具有其属性的防火墙规则对象的数组。
示例提示包括:
- “列出资源组”my-resource-group“中 SQL Server”my-sql-server“中的所有防火墙规则。
- 请列出在资源组“prod-resource-group”中针对 SQL Server“prod-sql-server”的防火墙规则。
- “为资源组”dev-resource-group“中的 SQL Server”dev-sql-server“设置哪些防火墙规则?”
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server的名称。 |
破坏性: ❌ |幂等: ✅ |开放世界: ❌ |只读: ✅ |机密: ❌ |本地必需: ❌
获取 SQL Server 信息
检索有关资源组中Azure SQL服务器的详细信息。 按名称显示特定Azure SQL服务器的信息,或列出指定资源组中的所有Azure SQL服务器。 它返回全面的服务器信息,包括配置详细信息和当前状态。
示例提示包括:
- “列出资源组”my-resource-group“中的所有Azure SQL服务器。
- “显示资源组”prod-resource-group“中的每个Azure SQL服务器。
- “显示Azure SQL服务器”my-sql-server“的详细信息。
- 获取 Azure SQL Server“prod-sql-server”的信息。
- “显示Azure SQL服务器”dev-sql-server“的属性。
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | 可选 | Azure SQL服务器名称。 |
破坏性: ❌ |幂等: ✅ |开放世界: ❌ |只读: ✅ |机密: ❌ |本地必需: ❌
列出 Microsoft Entra ID 管理员
列出为 SQL Server 配置的Microsoft Entra ID管理员。 此命令检索所有Entra ID管理员,包括其显示名称、对象 ID 和租户信息。
示例提示包括:
- 列出资源组“prod-resource-group”中 SQL 服务器“prod-sql-server”的 Microsoft Entra ID 管理员。
- 请显示为资源组“dev-resource-group”中的 SQL Server “dev-sql-server”配置的 Entra ID 管理员。
- “为资源组”data-resource-group“中的 SQL Server”analytics-sql-server“设置了哪些Microsoft Entra ID管理员?
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 资源组 | Required | Azure资源组的名称。 |
| 服务器名称 | Required | Azure SQL Server名称(例如,prod-sql-server)。 |
破坏性: ❌ |幂等: ✅ |开放世界: ❌ |只读: ✅ |机密: ❌ |本地必需: ❌
重命名 SQL 数据库
将现有Azure SQL 数据库重命名为同一SQL Server中的新名称。 此命令更改数据库资源的标识符,同时保留其配置和数据。 它返回具有新名称的更新的数据库信息。
示例提示包括:
- “将服务器”my-sql-server“上的数据库”my-database“重命名为资源组”my-resource-group“中的”my-database-v2”。
- 请将服务器«prod-sql-server»上的 SQL 数据库«old-database»重命名为«new-database».
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 数据库名称 | Required | Azure SQL 数据库 名称。 |
| 新建数据库名称 | Required | Azure SQL 数据库的新名称。 |
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server 名称。 |
破坏性: ✅ |幂等: ❌ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌
更新 SQL 数据库
调整和配置Azure SQL 数据库性能设置。 更新现有数据库的 SKU、计算层、存储容量或冗余选项,以满足不断变化的性能要求。 此命令返回更新的数据库配置,包括应用的缩放更改。
示例提示包括:
- “更改资源组”my-resource-group“中的服务器”my-sql-server“上的 SQL 数据库”my-database“排序规则。
- “将服务器”my-sql-server“上的 SQL 数据库'my-database'更新为最大大小为 2GB。
| Parameter | 必需还是可选 | Description |
|---|---|---|
| 数据库名称 | Required | Azure SQL 数据库 名称。 |
| 资源组 | Required | Azure资源组的名称。 这是Azure资源的逻辑容器。 |
| 服务器名称 | Required | Azure SQL Server 名称。 |
| Collation | 可选 | 数据库的排序规则(例如 SQL_Latin1_General_CP1_CI_AS)。 |
| 弹性池名称 | 可选 | 要向其分配数据库的弹性池的名称。 |
| 最大大小字节数 | 可选 | 数据库的最大大小(以字节为单位)。 |
| 读取刻度 | 可选 | 数据库的读取缩放选项(启用或禁用)。 |
| SKU 容量 | 可选 | 数据库的 SKU 容量(DTU 或 vCore 计数)。 |
| SKU 名称 | 可选 | 数据库的 SKU 名称(例如,、BasicS0、P1GP_Gen5_2)。 |
| SKU 层级 | 可选 | 数据库的 SKU 层(例如,、BasicStandard、PremiumGeneralPurpose)。 |
| 区域冗余 | 可选 | 数据库是否应为区域冗余。 |
破坏性: ✅ |幂等: ✅ |开放世界: ❌ |只读: ❌ |机密: ❌ |本地必需: ❌