SQLT – Instalação

O SQLT (SQLTXPLAIN) é uma ferramenta da própria Oracle para ajudar no diagnóstico de comandos SQL com baixo desempenho ou mesmo resultados incorretos.

Quando você abre um chamado sobre um SQL com lentidão no MOS, provavelmente irão solicitar que você execute o SQLT para este SQL, e envie para eles o resultado.

Além de ser utilizado pelo suporte da Oracle, o SQLT pode ser utilizado em seu dia a dia. Esta ferramenta pode ser baixada através da Nota do MOS 215187.1.

Neste Post, eu mostro como é a instalação no SQLT, que deve ser instalado no banco onde o SQL que será diagnosticado será analisado, com o usuário SYS.

O SQLT é baixado como um arquivo zip. Basta descompacta-lo, e no diretório install, executar o script SQL install.sql.

Já a utilização do SQLT pode ser feita com um usuário comum, e deve ser o usuário que executa o SQL ruim.
Durante a instalação, é solicitado qual o SCHEMA da aplicação que será analisada (eu coloquei o SCOTT).
Se depois você quiser analisar um SQL de outro SCHEMA, basta conceder a ROLE SQLT_USER_ROLE a este usuário.

Microsoft Windows [versão 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Todos os direitos reservados.

C:UsersRicardo>cd Software

C:UsersRicardoSoftware>cd sqlt

C:UsersRicardoSoftwaresqlt>cd install

C:UsersRicardoSoftwaresqltinstall>sqlplus / AS SYSDBA

SQL*Plus: Release 11.2.0.3.0 Production on Seg Out 7 12:16:32 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Conectado a:
Personal Oracle Database 11g Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> @install

Procedimento PL/SQL concluÝdo com sucesso.

Specify optional Connect Identifier (as per Oracle Net)
Include "@" symbol, ie. @PROD
If not applicable, enter nothing and hit the "Enter" key.
This connect identifier is only used while exporting SQLT
repository everytime you execute one of the main methods.

Optional Connect Identifier (ie: @PROD):

Procedimento PL/SQL concluÝdo com sucesso.

Define SQLTXPLAIN password (hidden and case sensitive).

Password for user SQLTXPLAIN:
Re-enter password:

Procedimento PL/SQL concluÝdo com sucesso.

... please wait

nÒo hß linhas selecionadas

Specify PERMANENT tablespace to be used by SQLTXPLAIN.

Tablespace name is case sensitive.

Default tablespace [UNKNOWN]: USERS

Procedimento PL/SQL concluÝdo com sucesso.

... please wait

TABLESPACE
------------------------------
TEMP

Specify TEMPORARY tablespace to be used by SQLTXPLAIN.

Tablespace name is case sensitive.

Temporary tablespace [UNKNOWN]: TEMP

Procedimento PL/SQL concluÝdo com sucesso.

The main application user of SQLT is the schema
owner that issued the SQL to be analyzed.
For example, on an EBS application you would
enter APPS.
You will not be asked to enter its password.
To add more SQLT users after this installation
is completed simply grant them the SQLT_USER_ROLE
role.

Main application user of SQLT: SCOTT

Procedimento PL/SQL concluÝdo com sucesso.

SQLT can make extensive use of licensed features
provided by the Oracle Diagnostic and the Oracle
Tuning Packs, including SQL Tuning Advisor (STA),
SQL Monitoring and Automatic Workload Repository
(AWR).
To enable or disable access to these features
from the SQLT tool enter one of the following
values when asked:

"T" if you have license for Diagnostic and Tuning
"D" if you have license only for Oracle Diagnostic
"N" if you do not have these two licenses

Oracle Pack license [T]: T

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

TADOBJ completed.

Procedimento PL/SQL concluÝdo com sucesso.

SQDOLD completed. Ignore errors from this script
  adding: 131007121655_01_sqcreate.log (164 bytes security) (deflated 89%)

SQCUSR completed. Some errors are expected.

Procedimento criado.

NÒo hß erros.
  adding: 131007121721_02_sqcusr.log (164 bytes security) (deflated 85%)

TAUTLTEST completed.
  adding: 131007121727_09_tautltest.log (164 bytes security) (deflated 60%)

SQUTLTEST completed.
  adding: 131007121727_10_squtltest.log (164 bytes security) (deflated 61%)

nÒo hß linhas selecionadas

TACOBJ completed.
  adding: 131007121728_03_tacobj.log (164 bytes security) (deflated 86%)

SQL> PRO Dropping Libraries for TRCA
Dropping Libraries for TRCA
SQL> SET TERM OFF;
tool_repository_schema: "SQLTXPLAIN"
tool_administer_schema: "SQLTXADMIN"
role_name: "SQLT_USER_ROLE"
Creating Procedures
Creating Package Specs TRCA$G
NÒo hß erros.
Creating Package Specs TRCA$P
NÒo hß erros.
Creating Package Specs TRCA$T
NÒo hß erros.
Creating Package Specs TRCA$I
NÒo hß erros.
Creating Package Specs TRCA$E
NÒo hß erros.
Creating Package Specs TRCA$R
NÒo hß erros.
Creating Package Specs TRCA$X
NÒo hß erros.
Creating Views
Creating Package Body TRCA$G
NÒo hß erros.
Creating Package Body TRCA$P
NÒo hß erros.
Creating Package Body TRCA$T
NÒo hß erros.
Creating Package Body TRCA$I
NÒo hß erros.
Creating Package Body TRCA$E
NÒo hß erros.
Creating Package Body TRCA$R
NÒo hß erros.
Creating Package Body TRCA$X
NÒo hß erros.
Creating Grants on Libraries

Tool Version
----------------
12.1.02

Install Date
----------------
20131007

Directories
------------------------------------------------------------------------------------------------------------------------
--------
TRCA$INPUT1(VALID)      C:oraclediagrdbmsorclorcltrace
TRCA$INPUT2(VALID)      C:oraclediagrdbmsorclorcltrace
TRCA$STAGE(VALID)       C:oraclediagrdbmsorclorcltrace
user_dump_dest          C:oraclediagrdbmsorclorcltrace
background_dump_dest    C:oraclediagrdbmsorclorcltrace

Libraries
------------------------------------------------------------------------------------------------------------------------
--------
VALID PACKAGE TRCA$I /* $Header: 224270.1 tacpkgi.pks 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE TRCA$E /* $Header: 224270.1 tacpkge.pks 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE TRCA$G /* $Header: 224270.1 tacpkgg.pks 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE TRCA$P /* $Header: 224270.1 tacpkgp.pks 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE TRCA$R /* $Header: 224270.1 tacpkgr.pks 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE TRCA$T /* $Header: 224270.1 tacpkgt.pks 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE TRCA$X /* $Header: 224270.1 tacpkgx.pks 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE BODY TRCA$I /* $Header: 224270.1 tacpkgi.pkb 11.4.5.1 2012/11/27 carlos.sierra $ */
VALID PACKAGE BODY TRCA$E /* $Header: 224270.1 tacpkge.pkb 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE BODY TRCA$G /* $Header: 224270.1 tacpkgg.pkb 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE BODY TRCA$P /* $Header: 224270.1 tacpkgp.pkb 11.4.5.8 2013/05/10 carlos.sierra $ */
VALID PACKAGE BODY TRCA$R /* $Header: 224270.1 tacpkgr.pkb 11.4.5.0 2012/11/21 carlos.sierra $ */
VALID PACKAGE BODY TRCA$T /* $Header: 224270.1 tacpkgt.pkb 11.4.5.7 2013/04/05 carlos.sierra $ */
VALID PACKAGE BODY TRCA$X /* $Header: 224270.1 tacpkgx.pkb 11.4.5.0 2012/11/21 carlos.sierra $ */
TACPKG completed.

Procedimento PL/SQL concluÝdo com sucesso.

  adding: 131007121747_04_tacpkg.log (164 bytes security) (deflated 80%)

Procedimento PL/SQL concluÝdo com sucesso.

SQCOBJ completed. Some errors are expected.
  adding: 131007121857_05_sqcobj.log (164 bytes security) (deflated 93%)

Procedimento PL/SQL concluÝdo com sucesso.

SQLT can make extensive use of licensed features
provided by the Oracle Diagnostic and the Oracle
Tuning Packs, including SQL Tuning Advisor (STA),
SQL Monitoring, Automatic Workload Repository
(AWR) and SQL Tuning Sets (STS).
To enable or disable access to these features
from the SQLT tool enter one of the following
values when asked:

"T" if you have license for Diagnostic and Tuning
"D" if you have license only for Oracle Diagnostic
"N" if you do not have these two licenses

pack_license: "T"
enable_tuning_pack_access

Procedimento PL/SQL concluÝdo com sucesso.

Specify optional Connect Identifier (as per Oracle Net)
Include "@" symbol, ie. @PROD
If not applicable, enter nothing and hit the "Enter" key

connect_identifier: ""

Procedimento PL/SQL concluÝdo com sucesso.

Tabela truncada.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento criado.

NÒo hß erros.

Tabela truncada.

Procedimento PL/SQL concluÝdo com sucesso.

Procedimento eliminado.

Commit concluÝdo.

SQSEED completed.
  adding: 131007122311_07_sqseed.log (164 bytes security) (deflated 80%)

Procedimento PL/SQL concluÝdo com sucesso.

... dropping packages for SQLT
... creating package specs for SQLT$A
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$C
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$D
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$E
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$H
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$I
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$M
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$R
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$S
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package specs for SQLT$T
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating views

Procedimento PL/SQL concluÝdo com sucesso.

... creating package body for SQLT$A
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$C
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$D
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$E
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$H
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$I
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$M
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$R
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$S
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;
... creating package body for SQLT$T
SQL> SHOW ERRORS;
NÒo hß erros.
SQL> --
SQL> SET TERM ON ECHO OFF;

Creating Grants on Packages ...

LIBRARIES
----------------------------------------------------------------
VALID   PACKAGE      11.4.5.8 SQLT$A
VALID   PACKAGE      11.4.5.0 SQLT$C
VALID   PACKAGE      11.4.5.6 SQLT$D
VALID   PACKAGE      11.4.5.0 SQLT$E
VALID   PACKAGE      11.4.5.0 SQLT$H
VALID   PACKAGE      11.4.5.0 SQLT$I
VALID   PACKAGE      11.4.5.0 SQLT$M
VALID   PACKAGE      11.4.5.6 SQLT$R
VALID   PACKAGE      11.4.5.0 SQLT$S
VALID   PACKAGE      11.4.5.6 SQLT$T
VALID   PACKAGE      11.4.5.0 TRCA$E
VALID   PACKAGE      11.4.5.0 TRCA$G
VALID   PACKAGE      11.4.5.0 TRCA$I
VALID   PACKAGE      11.4.5.0 TRCA$P
VALID   PACKAGE      11.4.5.0 TRCA$R
VALID   PACKAGE      11.4.5.0 TRCA$T
VALID   PACKAGE      11.4.5.0 TRCA$X
VALID   PACKAGE BODY 12.1.02  SQLT$A
VALID   PACKAGE BODY 12.1.01  SQLT$C
VALID   PACKAGE BODY 12.1.02  SQLT$D
VALID   PACKAGE BODY 11.4.5.0 SQLT$E

LIBRARIES
----------------------------------------------------------------
VALID   PACKAGE BODY 12.1.01  SQLT$H
VALID   PACKAGE BODY 11.4.5.7 SQLT$I
VALID   PACKAGE BODY 12.1.01  SQLT$M
VALID   PACKAGE BODY 12.1.01  SQLT$R
VALID   PACKAGE BODY 11.4.5.0 SQLT$S
VALID   PACKAGE BODY 11.4.5.7 SQLT$T
VALID   PACKAGE BODY 11.4.5.0 TRCA$E
VALID   PACKAGE BODY 11.4.5.0 TRCA$G
VALID   PACKAGE BODY 11.4.5.1 TRCA$I
VALID   PACKAGE BODY 11.4.5.8 TRCA$P
VALID   PACKAGE BODY 11.4.5.0 TRCA$R
VALID   PACKAGE BODY 11.4.5.7 TRCA$T
VALID   PACKAGE BODY 11.4.5.0 TRCA$X

Deleting CBO statistics for SQLTXPLAIN objects ...

12:27:08    0 sqlt$a: -> delete_sqltxplain_stats
12:27:27   19 sqlt$a:

2 comments

    1. Sim, ou você pode dar o GRANT deste ROLE a outro USER com ADMIN OPTION:

      07:15:47 SYSTEM@OTSQL> GRANT SQLT_USER_ROLE TO RICARDO WITH ADMIN OPTION;

      Grant succeeded.

      Elapsed: 00:00:00.03
      07:16:17 SYSTEM@OTSQL> CONN RICARDO/Nerv2018@OTSQL
      Connected.
      07:16:20 RICARDO@OTSQL> GRANT SQLT_USER_ROLE TO TESTE;

      Grant succeeded.

      Elapsed: 00:00:00.03
      07:16:30 RICARDO@OTSQL>

Deixe uma resposta para ricardo@nervinformatica.com.br Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.