暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 19C 创建一个SQL调优集作为SQL Access Advisor的输入

原创 Asher.HU 2021-02-04
1180

基本任务包括创建STS,加载它,创建SQL Access Advisor任务,然后执行该任务。

下图显示了SQL Access Advisor的基本工作流程。

图25-3使用SQL Access Advisor



通常,通过执行以下步骤来使用SQL Access Advisor:

  1. 创建一个SQL调优集

    SQL Access Advisor的输入工作负载源是一个SQL调整集(STS)。使用DBMS_SQLTUNE.CREATE_SQLSETDBMS_SQLSET.CREATE_SQLSET创建SQL调整集。

     创建SQL调优集作为SQL Access Advisor的输入 描述了此任务。

  2. 加载SQL调优集

    当基于实际使用的工作负载可用时,SQL Access Advisor的性能最佳。使用DBMS_SQLTUNE.LOAD_SQLSETDBMS_SQLSET.LOAD_SQLSET用您的工作量填充SQL调整集。

     用用户定义的工作负载填充SQL优化集 描述了此任务。

  3. 创建和配置任务

    在任务中,您定义必须分析的SQL Access Advisor以及分析结果的位置。使用该DBMS_ADVISOR.CREATE_TASK过程创建任务然后,您可以使用该SET_TASK_PARAMETER过程为任务定义参数,然后使用该过程将任务链接到STS DBMS_ADVISOR.ADD_STS_REF

     创建和配置SQL Access Advisor任务 描述了此任务。

  4. 执行任务

    运行该DBMS_ADVISOR.EXECUTE_TASK过程以生成建议。每个建议都指定一个或多个动作。例如,建议创建多个实例化视图日志,创建一个实例化视图,然后对其进行分析以收集统计信息。

     执行SQL Access Advisor任务 描述了此任务。

  5. 查看建议

    您可以通过查询数据字典视图来查看建议。

     查看SQL Access Advisor任务结果 描述了此任务。

  6. (可选)生成并执行实施建议的SQL脚本。

    描述此任务的 生成和执行任务脚本 



本节包含以下主题:

 

25.2.1创建一个SQL调优集作为SQL Access Advisor的输入

SQL Access Advisor的输入工作负载源是STS。

因为STS是作为单独的实体存储的,所以多个顾问程序任务可以共享它。使用DBMS_SQLTUNE.CREATE_SQLSETDBMS_SQLSET.CREATE_SQLSET过程创建一个STS 

顾问程序任务引用了STS之后,您将无法删除或修改STS,除非所有顾问程序任务都删除了它们对它的依赖。当删除父顾问程序任务或从顾问程序任务中手动删除工作负载参考时,将删除工作负载参考。

先决条件

创建STS的用户必须已被授予ADMINISTER SQL TUNING SET特权。要在其他用户拥有的SQL调整集上运行SQL Access Advisor,该用户必须具有ADMINISTER ANY SQL TUNING SET特权。


假设条件

本教程假定以下内容:

  • 您要创建一个名为的STS MY_STS_WORKLOAD
  • 您想将此STS用作从sh架构派生的工作负载的输入
  • 您使用DBMS_SQLTUNE而不是DBMS_SQLSET

要创建一个STS:

  1. 在SQL * Plus中,以user身份登录数据库sh
  2. 设置SQL * Plus变量。

    例如,输入以下命令:

    SET SERVEROUTPUT ON;
    VARIABLE task_id NUMBER;
    VARIABLE task_name VARCHAR2(255);
    VARIABLE workload_name VARCHAR2(255);
    
    复制
  3. 创建SQL调优集。

    例如,为workload_name变量分配一个值并按如下方式创建STS:

    EXECUTE :workload_name := 'MY_STS_WORKLOAD';
    EXECUTE DBMS_SQLTUNE.CREATE_SQLSET(:workload_name, 'test purpose');
    复制

也可以看看:


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论