상세 컨텐츠

본문 제목

Oracle Auto Sql Tuning Task

카테고리 없음

by descjuvaciperper 2021. 3. 9. 20:52

본문

Oracle 12c offers a useful utility called the SQL Tuning Advisor. You can use this built-in tool to provide suggestions or recommendations about certain SQL statements. Although it may not always give perfect advice, just like anything else, having it in your toolbox of tuning techniques is beneficial.

  1. Oracle Auto Sql Tuning Task Free
  2. Oracle Sql Tuning Tools
  3. Oracle Sql Tuning Tips
  4. Oracle 11g Auto Sql Tuning Task
  5. Oracle 12c Sys_auto_sql_tuning_task

Oracle Auto Sql Tuning Task Free

If you are asking about manual sql tuning using DBMSSQLTUNE package - then use parameter timelimit of DBMSSQLTUNE.CREATETUNINGTASK procedure to control the sql tuning time. See Automatic SQL Tuning. The parameters of automatic tuning tasks could be modified using procedure DBMSAUTOSQLTUNE.SETAUTOTUNINGTASKPARAMETER. Mar 04, 2019  4. Cancel the Tuning Task (if needed, if smthg. Goes wrong) If the execution is taking some time or if it caused some performance issues or for what ever reason you want to cancel the execution: SQL EXECUTE DBMSSQLTUNE.canceltuningtask(taskname = 'testtuningtask'); 5. Pause/Resume the Tuning Task. What is Automatic SQL Tuning?. Oracle automatically runs the SQL Tuning Advisor on selected high-load SQL statements from the Automatic Workload Repository (AWR) that qualify as tuning candidates. This task, called Automatic SQL Tuning, runs in the default maintenance windows on a nightly basis.

  1. Use PL/SQL and the internal package DBMS_SQL_TUNE to create a tuning task. Type this:

    You should see the following:

    In the preceding command, note the TIME_LIMIT of 60. That limits the processing time to 60 seconds. You may not always want to run something like this for long periods in your database, because it incurs system overhead.

  2. Execute the tuning advisor with your task by typing this:

    Because of the limit of 60 seconds provided in the task creation, this step may take up to 60 seconds to complete. During this time, your prompt won’t come back.

    When it completes, you should see this:

    If you’ve set a longer time and are getting impatient, you can open another SQL window to make sure that the task is still executing by typing

    You see something like the following:

  3. When the execution is complete, you can view the results by running the BMS_SQLTUNE.report_tuning_task procedure. Type the following:

    For the sake of space, we’ve snipped some sections from the output that follows, but you see something like this:

    The latter part of the report shows the before and after execution plans. In this case, you’ve seen the before when you were generating execution plans. Go ahead and add the index, regenerate the execution plan, and see whether you’ve made an improvement.

    Before you add the index, note that the recommendations give the SQL to add the index:

    Also note that Oracle gives a warning:

  4. Add the index with your own name by typing this:

    You should see something like the following:

  5. Take a look at the execution plan. Type the following:

    And then type

    You should see output like this:

Oracle Sql Tuning Tools

Oracle auto sql tuning task list

Now that you’ve added the index, a few things are evident:

  • The cost of the plan dropped from 40336 to 5.

  • There are now six steps.

  • The full table scan is gone. Instead you see the use of your new index.

Oracle Sql Tuning Tips

Often one of the tough parts about tuning a database is having a solid understanding of the application and the data. The issue might not always be obvious. Sometimes engaging other application and data experts helps.

Oracle 11g Auto Sql Tuning Task

Sys_auto_sql_tuning_task

Oracle 12c Sys_auto_sql_tuning_task

Explain to them your findings and what you propose. They may be able to help you come to a conclusion. Also, if the data is part of a packaged third-party application, sometimes opening a ticket with the vendor is the way to go.