Vlw Chiappa... vou tentar

[]'s

Alex Fernando Kirsten
Oracle 9i Database Administrator Certified Professional
Depto. de Tecnologia
Operacional Têxtil

  ----- Original Message ----- 
  From: jlchiappa 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Monday, November 27, 2006 1:50 PM
  Subject: [oracle_br] Re: Dúvidas com plano de execução


  Alex, não uso NENHUMA das tools que vc cita (já que normalmente GUIs 
  do tipo ESCONDEM o que estão fazendo no banco por trás da telinha, o 
  que pra mim é um ENORME fator de complicação, as desprezo normalmente 
  por isso) , mas quando duas ferramentas apresentam planos diferentes 
  para exatamente o ** mesmo ** SQL, as possibilidades são :

  a) bug em alguma delas
  b) dados errôneos na tabela plan_table
  c) diferença devido à bind variables com valores diferentes (algumas 
  tools, como o EXPLAIN PLAN, não registram bind peeking, outras 
  mostram.


  Eu recomendaria que vc DESPREZASSE, ao menos no momento, essas 
  GUIzinhas aí e fosse DIRETO à fonte da informação, ie, via SQL numa 
  ferramenta TEXTO, acesse diretamente as views/tabelas/opções Oracle. 
  A tool que recomendaria seria o sqlplus, e o procedimento seria algo 
  tipo : TRUNCAR a info hoje presente na plan_table, pedir pro usuário 
  rodar novamente o programa que gera o SQL a analisar (que vc já sabe 
  qual é, pelo jeito), extrair da V$SQL_PLAN o plano real usado para a 
  execução (em sendo 10gr2 vc deverá inclusive poder extrair os valores 
  bind via pesquisa na v$sql_bind_capture), pedir um explain plan, em 
  havendo diferença pode ser bind peeking entrando em ação, vc poderia 
  pedir um trace+tkprof mostram os diferentes valores de binds usados. 
  Isso seria os primeiros passos... Pra mais info sobre os pontos 
  citados, recomendo a documentação de Tunning, inicialmente.

  []s

  Chiappa

  --- Em oracle_br@yahoogrupos.com.br, "Alex Fernando Kirsten" 
  <[EMAIL PROTECTED]> escreveu
  >
  > Olá lista,
  > 
  > Estou tendo um problema de lentidão em um servidor (oracle 10gr2) e 
  quando verifico no Enterprise Mangager, um SQL me apresenta um custo 
  de 9881, e quando consulto no PL/SQL Developer, me apresenta um custo 
  de 131, inclusive com um plano de execução diferente. Vejam (eliminei 
  o nome da tabela e dos indices pra ter uma clareza melhor):
  > 
  > Plano de execução mostrado pelo enterprise manager (custo 9881):
  > SELECT STATEMENT 
  > TABLE ACCESS BY INDEX ROWID 
  > INDEX FULL SCAN INDEX (UNIQUE)
  > 
  > Plano de execução apresentado no pl/sql developer (custo 131):
  > SELECT STATEMENT
  > SORT ORDER BY 
  > CONCATENATION 
  > TABLE ACCESS BY INDEX ROWID 
  > INDEX RANGE SCAN
  > TABLE ACCESS BY INDEX ROWID
  > INDEX RANGE SCAN 
  > TABLE ACCESS BY INDEX ROWID
  > INDEX RANGE SCAN 
  > TABLE ACCESS BY INDEX ROWID
  > INDEX RANGE SCAN 
  > TABLE ACCESS BY INDEX ROWID
  > INDEX RANGE SCAN 
  > 
  > A consulta é realizada em cima de uma unica tabela (não existem 
  relacionamentos). Obviamente, ambos os planos foram obtidos com o 
  mesmo sql. Alguém já passou por algum problema parecido? 
  > 
  > []'s
  > 
  > Alex Fernando Kirsten
  > Oracle 9i Database Administrator Certified Professional
  > Depto. de Tecnologia
  > Operacional Têxtil
  > 
  > 
  > [As partes desta mensagem que não continham texto foram removidas]
  >



   

[As partes desta mensagem que não continham texto foram removidas]

Responder a