使用索引建议

索引优化会保留它在 intelligentperformance 数据库中 azure_sys 架构下的一组表中生成的建议。

可以使用 Azure 门户中的 “索引优化 ”页或使用 Azure CLI az postgres flexible-server index-tuning list-recommendations 命令读取这些建议。

但是,这两种方法都没有显示生成建议的查询的文本。 此行为是有意的,因为查询的文本可能包含敏感信息。 应仅允许有权访问数据库的使用者查看这些语句的文本。 但不应允许仅获得作为 Azure 资源的 Azure Database for PostgreSQL 灵活服务器实例访问权限的对象使用。

因此,如果需要读取查询的文本,则需要获得连接到数据库引擎的权限,以便执行查询,以便从数据库中可用的intelligent performanceazure_sys两个视图中检索该信息。

注释

建议会在最后一次生成后的 35 天被系统自动删除。 要使此自动删除机制正常工作,必须启用索引优化。

列出索引建议的步骤

使用 Azure 门户

  1. 选择 Azure Database for PostgreSQL 灵活服务器。

  2. 在资源菜单中的 “智能性能”下,选择 “索引优化”。

    • 如果已启用该功能但尚未生成建议,则屏幕如下所示:

      显示启用该功能但未提供建议的“索引优化”页面的屏幕截图。

    • 如果该功能已禁用,并且过去从未生成建议,屏幕如下所示:

      当禁用该功能且无推荐时“索引调优”页面的屏幕截图。

    • 如果该功能处于禁用状态,但之前已启用并生成建议,屏幕如下所示:

      显示禁用该功能且已提供建议的“索引优化”页面的屏幕截图。

  3. 如果有可用的建议,请选择“查看索引建议”摘要以访问完整列表:

    显示“索引优化”页面在有建议时的样子,以及如何获取完整列表的屏幕截图。

  4. 该列表显示所有可用的建议,其中包含每个建议的一些详细信息。 默认情况下,列表按“最后一个建议”降序排序,在顶部显示最新建议。 但是,可以按任何其他列进行排序,并且可以使用筛选框来减少显示的项目列表。 筛选结果是其数据库、模式或表名称包含所提供的文本的项:

    截图显示“索引建议”页面的外观,其中包含多条建议。

  5. 若要查看有关任何特定建议的进一步信息,请选择该建议的名称,并在屏幕右侧打开“索引建议详细信息”窗格,显示有关该建议的所有可用详细信息:

    显示一条特定建议的“索引建议详细信息”窗格的屏幕截图。

应用索引建议的步骤

索引建议包含可以为实现建议而执行的 SQL 语句。

以下部分演示了如何针对特定建议获取此语句。

有了该语句后,可以使用偏好的任何 PostgreSQL 客户端连接到服务器并应用建议。

使用 Azure 门户

  1. 选择 Azure Database for PostgreSQL 灵活服务器。

  2. 在资源菜单中的 “智能性能”下,选择 “索引优化”。

    显示“智能性能”部分下的“索引优化”菜单选项的屏幕截图,用于禁用索引优化。

  3. 假设索引优化生成的建议,请选择 “查看索引建议 摘要”以访问可用建议的列表。

    显示“索引优化”页面在有建议时的样子,以及如何获取完整列表的屏幕截图。

  4. 从建议列表中选择一个:

    • 如要获取建议的 SQL 语句,选择相关建议右侧的省略号,然后选择“复制 SQL 脚本”。

      显示如何从“索引建议”页面复制 SQL 语句的屏幕截图。

    • 或者选择建议的名称,显示其“索引建议详细信息”,然后选择“SQL 脚本”文本框中的剪贴板图标,复制 SQL 语句。

      显示如何从“索引建议详细信息”页面复制 SQL 语句的屏幕截图。