Nwlapcug.com


SQL Tuning di Oracle 10g Tutorial

SQL Tuning di Oracle 10g Tutorial


Oracle è il principale sistema di gestione di database relazionale ad oggetti offerto da Oracle Corporation per i database di livello enterprise. Structured Query Language (SQL) è il linguaggio standard utilizzato per estrarre informazioni dal database. È necessario ottimizzare una query SQL al fine di migliorare le prestazioni delle query per ottenere le informazioni dal database. Oracle 10g ha introdotto "SQL Tuning Advisor," che è possibile accedere tramite un pacchetto chiamato "DBMS_SQLTUNE." Utilizzando l'ottimizzazione comporta la creazione, l'esecuzione, il controllo dello stato e il recupero dei risultati di un'attività di ottimizzazione di SQL.

Istruzioni

1

Creare un'attività di ottimizzazione utilizzando l'istruzione SQL con il tempo e l'ambito come parametri di input nel seguente modo:

CREATE PROCEDURE tuningtask

È

tunetask VARCHAR2(40);

BEGIN

SQLText: = ' selezionare customername

DA cliente, customerorder

DOVE CustomerID = customerorder.customerid

tunetask: = DBMS_SQLTUNE. CREATE_TUNING_TASK (

sql_text = > sqltext,

user_name = > 'sys',

Portata = > 'Completa',

time_limit = > 60,

task_name = > 'customer_orders'

FINE tuningtask;

L'esecuzione del comando di cui sopra verrà creata una routine con l'istruzione SQL per estrarre tutti i clienti che hanno effettuato ordini.

2

Eseguire l'attività di ottimizzazione utilizzando la funzione "EXECUTE_TUNING_TASK" nel modo seguente:

DBMS_SQLTUNE_EXECUTE_TUNING_TASK (task_name = > 'customer_orders');

Eseguito il comando precedente verrà eseguire l'attività di ottimizzazione con il nome 'customer_orders' e analizzare il loro piano di esecuzione.

3

Controllare lo stato dell'attività dal "USER_ADVISOR_TASKS" vista Ottimizzazione SQL nel modo seguente:

SELEZIONATE stato

DA USER_ADVISOR_TASKS

DOVE task_name = 'customer_orders';

Il comando precedente consente di recuperare le informazioni sullo stato dell'attività del nome 'customer_orders'.

4

Recuperare i risultati dell'attività di ottimizzazione di SQL utilizzando la funzione "REPORT_TUNING_TASK" con tutte le raccomandazioni in dettaglio. Immettere il seguente comando per eseguire il report attività funzione di sintonizzazione:

SELEZIONARE DBMS_SQLTUNE. REPORT_TUNING_TASK('customer_orders')

DA DUE;

Dual è la tabella fittizia in Oracle utilizzato in tutti i database Oracle. È usato nei casi dove alcune query non richiedono tutte le tabelle. Il comando precedente mostrerà un report che spiega in dettaglio il tempo di esecuzione di query della query corrente e consigli su come migliorare le prestazioni.

Consigli & Avvertenze

  • È necessario disporre di privilegi di "ADVISOR" per poter utilizzare il pacchetto "DBMS_SQLTUNE".