使用 Azure MCP 服务器,可以使用自然语言提示管理 Azure Database for MySQL 服务器、数据库和表。 无需复杂的语法即可简化 MySQL 资源管理。
Azure Database for MySQL 是由 MySQL 社区版提供支持的完全托管的关系数据库服务。 使用它在 Azure 中托管 MySQL 数据库。 它处理具有可预测性能和动态可伸缩性的任务关键型工作负荷。
注释
Azure MCP 服务器工具为完成任务所需的数据定义参数。 其中一些参数特定于每个工具,如下所示。 其他参数是全局参数,由所有工具共享。 有关详细信息,请参阅 工具参数。
数据库:列出所有数据库
列出指定 Azure Database for MySQL 灵活服务器实例上可用的所有数据库。 此命令提供数据库结构的可见性,有助于识别用于连接和查询作的数据库。
- 列出数据库:“列出服务器'my-mysql-server'上的所有数据库”。
- 显示数据库:“显示 MySQL 服务器”my-mysql-server“上的所有数据库。
- 按名称筛选:“列出以”test“开头的”my-mysql-server“上的数据库。
- 资源组中的列表:“在资源组”my-resource-group“中列出服务器”my-mysql-server“上的数据库。
- 显示用户可访问的数据库:“列出服务器”my-mysql-server“上的用户”dbadmin“可访问的数据库。
| 参数 | 必需还是可选 | Description |
|---|---|---|
| User | 必选 | 用于访问 MySQL 服务器的用户名。 |
| 服务器 | 必选 | 要访问的 MySQL 服务器。 |
数据库:查询
对 Azure Database for MySQL 灵活服务器上的数据库执行安全的只读 SQL SELECT 查询。 使用此工具在不修改表数据的情况下浏览或检索表数据。
最佳实践:
- 仅列出所需的列(避免
SELECT *)。 - 添加 WHERE 筛选器以缩小结果范围。
- 使用 LIMIT/OFFSET 进行分页。
- 将 ORDER BY 用于确定性结果。
- 避免返回不必要的敏感数据。
允许:
- 仅允许单个 SELECT 语句。
不允许:
- 非 SELECT 语句(INSERT、UPDATE、DELETE、REPLACE、MERGE、TRUNCATE、ALTER、CREATE、DROP)。
- 多语句。
- 隐藏写入作的注释。
- 事务控制语句(BEGIN、COMMIT、ROLLBACK)。
- INTO OUTFILE 和其他破坏性关键字。
Example:
SELECT ID, name, status FROM customers WHERE status = 'Active' ORDER BY name LIMIT 50;
示例提示包括:
- 运行查询:“运行 SELECT ID,名称 FROM customers WHERE status = 'Active' ORDER BY name LIMIT 50 on database 'salesdb' on server 'my-mysql-server'”。
- 对行进行计数:“运行 SELECT COUNT} FROM orders WHERE status = 'completed' on database 'salesdb' on server 'my-mysql-server'”。
- 筛选的查询:“从用户运行 SELECT 名称,WHERE created_at > ”2025-01-01“ORDER BY created_at服务器”my-mysql-server“上的数据库”appdb“限制 25。
- 热门产品:“运行 SELECT product_id, SUM(quantity) AS TOTAL FROM sales WHERE sale_date >= '2025-01-01' GROUP BY by product_id ORDER BY total DESC LIMIT 10 on server 'my-mysql-server' 上的数据库 'analytics'”。
- 非重复值:“在服务器”my-mysql-server“上的数据库”inventory“上运行 SELECT DISTINCT category FROM products LIMIT 20。
| 参数 | 必需还是可选 | Description |
|---|---|---|
| User | 必选 | 用于访问 MySQL 服务器的用户名。 |
| 服务器 | 必选 | 要访问的 MySQL 服务器。 |
| 数据库 | 必选 | 要访问的 MySQL 数据库。 |
| 查询 | 必选 | 要针对 MySQL 数据库执行的 SQL 查询。 |
服务器:配置获取
检索指定的 Azure Database for MySQL 灵活服务器实例的综合配置详细信息。 此命令提供有关服务器设置、性能参数、安全配置和作特征的见解,这些特征对于数据库管理和优化至关重要。 它以 JSON 格式返回配置数据,包括ServerName、Location、Version、SKU、StorageSizeGB和BackupRetentionDaysGeoRedundantBackup属性。
示例提示包括:
- 获取服务器配置:“获取服务器'my-mysql-server'的配置详细信息”。
- 显示版本和 SKU:“显示服务器”my-mysql-server“的 MySQL 引擎版本和 SKU。
- 获取备份保留期:“服务器”my-mysql-server“的备份保留期是多少?
- 显示存储分配:“显示服务器'my-mysql-server'的存储分配”。
- 获取完整配置:“获取服务器'my-mysql-server'的完整配置”。
| 参数 | 必需还是可选 | Description |
|---|---|---|
| User | 必选 | 用于访问 MySQL 服务器的用户名。 |
| 服务器 | 必选 | 要访问的 MySQL 服务器。 |
服务器:列出资源组中的所有实例
列出指定资源组中的所有 Azure Database for MySQL 灵活服务器实例。 此命令提供可用 MySQL 服务器资源的清单,包括其名称和当前状态,以便可以有效地管理服务器和计划资源。
示例提示包括:
- 列出服务器:“列出订阅中的所有 MySQL 灵活服务器实例”。
- 列出资源组中的服务器:“列出资源组”prod-rg“中的 MySQL 服务器。
- 按区域筛选:“在区域”eastus“中显示 MySQL 服务器。
- 显示服务器状态:“列出服务器及其当前状态。
- 按名称查找服务器:“查找名为'my-mysql-server'的服务器”。
| 参数 | 必需还是可选 | Description |
|---|---|---|
| User | 必选 | 用于访问 MySQL 服务器的用户名。 |
服务器:获取参数
检索 Azure Database for MySQL 灵活服务器上的单个服务器配置参数的当前值。 使用此服务器命令在更改设置之前检查设置,例如 max_connections, wait_timeout或 slow_query_log。
示例提示包括:
-
获取参数值:“获取服务器
my-mysql-server的值max_connections。 -
检查slow_query_log:“是否
slow_query_log在服务器上my-mysql-server启用?” -
获取wait_timeout:“显示
wait_timeout服务器my-mysql-server的值”。 -
显示缓冲池大小:“获取
innodb_buffer_pool_size服务器my-mysql-server。” -
在更改前检索参数:“在更新前在服务器上
my-mysql-server检索max_allowed_packet。
| 参数 | 必需还是可选 | Description |
|---|---|---|
| User | 必选 | 用于访问 MySQL 服务器的用户名。 |
| 服务器 | 必选 | 要访问的 MySQL 服务器。 |
| 参数 | 必选 | 要访问的 MySQL 参数。 |
服务器:设置参数
将 MySQL 服务器配置参数设置为新值或更新。 使用此命令可以优化性能、安全性或作行为。 此命令允许使用验证进行微调的配置管理,以确保参数更改与服务器的当前状态和约束兼容。
示例提示包括:
-
设置参数:“在服务器上
my-mysql-server设置为max_connections500。 -
启用慢查询日志:“在服务器上
my-mysql-server启用slow_query_log”。 -
调整超时:“在服务器上
my-mysql-server设置为wait_timeout300”。 -
增加缓冲池:“设置为
innodb_buffer_pool_size2G在服务器上my-mysql-server。 -
更改允许的最大数据包数:“设置为
max_allowed_packet64M服务器my-mysql-server”。”
| 参数 | 必需还是可选 | Description |
|---|---|---|
| User | 必选 | 用于访问 MySQL 服务器的用户名。 |
| 服务器 | 必选 | 要访问的 MySQL 服务器。 |
| 参数 | 必选 | 要访问的 MySQL 参数。 |
| 价值 | 必选 | 要为 MySQL 参数设置的值。 |
表:列出数据库中的所有表
枚举 Azure Database for MySQL 灵活服务器实例上指定数据库中的所有表。 此命令提供表对象的完整清单,有助于对开发任务进行数据库浏览、架构分析和数据体系结构理解。
示例提示包括:
- 列出表:“列出数据库'salesdb'中的所有表”。
- 显示表:“数据库”清单“中存在哪些表?
- 筛选表:“列出以数据库”appdb“中的”tmp_“开头的表。
- 对表进行计数:“数据库'分析'中的表数?”
- 查找表:“在数据库'salesdb'中查找名为'orders'的表。
| 参数 | 必需还是可选 | Description |
|---|---|---|
| User | 必选 | 用于访问 MySQL 服务器的用户名。 |
| 服务器 | 必选 | 要访问的 MySQL 服务器。 |
| 数据库 | 必选 | 要访问的 MySQL 数据库。 |
表:获取表架构
检索 Azure Database for MySQL 灵活服务器数据库中特定表的详细架构信息。 此命令提供全面的元数据,包括列定义、数据类型、约束、索引和关系。 此信息对于了解表结构和支持应用程序开发至关重要。
示例提示包括:
- 获取表架构:“在数据库'salesdb'中显示表'订单'的架构。
- 获取列列表:“在数据库”crm“中列出”customers“的列和数据类型。
- 显示索引信息:“在数据库”billing“中显示表”transactions“的索引。
- 查找主键:“数据库”auth“中表”users“的主键是什么?
- 显示完整定义:“获取数据库”inventory“中”inventory_items“的完整表定义。
| 参数 | 必需还是可选 | Description |
|---|---|---|
| User | 必选 | 用于访问 MySQL 服务器的用户名。 |
| 服务器 | 必选 | 要访问的 MySQL 服务器。 |
| 数据库 | 必选 | 要访问的 MySQL 数据库。 |
| 表 | 必选 | 要访问的 MySQL 表。 |