Re: [oracle_br] Re: Tempo de Resposta de SQL no Banco

2008-02-07 Por tôpico Danilo de Novais Silveira
Só uma dica pra você pensar: você analisar uma query no sqlplus é MUITO
diferente de analisar uma query na aplicação. Uma query pode ter uma
resposta de menos de 1 segundo no sqlplus, mas na hora da aplicação demorar
1minuto. Depende do estado do banco.

Não sei se adianta muito pra você, mas a sugestão do amigo de olhar a
v$session_longops é a mais adequada, na minha opinião.

Em 07/02/08, dhvillegas [EMAIL PROTECTED] escreveu:

   O intuito disso é fazer uma analise em todas as consultas das
 aplicaçoes existentes, ago parecido com o que eu ja tenho numa base
 em postgress.
 Montei um relatorio baseado em todas as conexões efetuados durante o
 dia, sumarizando todas as consultas e mostrando a media do tempo
 gasto de cada view, com isso consigo saber se ha alguma coisa errada
 com alguma aplicacao que pode provocar a lentidao do servico.

 precisava de algo assim:

 select * from tables 34ms
 select * from users where id_user = 1 23ms

 Obrigado
 Denis

 --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br,
 rei_do_delphi
 [EMAIL PROTECTED] escreveu
 
  Denis, não tenho acesso ao Oracle aqui no serviço, mas se muito não
 me
  engano, você consegue essas informações na v$sql.
  Vallew.
  --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br,
 dhvillegas denis.villegas@
  escreveu
  
   Pessoal,
  
   Preciso saber se existe alguma consulta ou query que esteja
 rodando e
  o
   tempo seja maior que 1 segundo, pra fins de analise, isso é
 possivel,
   consigo estrair essa informação?
  
   abs
   Denis
  
 

  



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



[oracle_br] Re: Tempo de Resposta de SQL no Banco

2008-02-07 Por tôpico dhvillegas
O intuito disso é fazer uma analise em todas as consultas das 
aplicaçoes existentes, ago parecido com o que eu ja tenho numa base 
em postgress.
Montei um relatorio baseado em todas as conexões efetuados durante o 
dia, sumarizando todas as consultas e mostrando a media do tempo 
gasto de cada view, com isso consigo saber se ha alguma coisa errada 
com alguma aplicacao que pode provocar a lentidao do servico.

precisava de algo assim:

select * from tables 34ms
select * from users where id_user = 1 23ms

Obrigado 
Denis

--- Em oracle_br@yahoogrupos.com.br, rei_do_delphi 
[EMAIL PROTECTED] escreveu

 Denis, não tenho acesso ao Oracle aqui no serviço, mas se muito não 
me 
 engano, você consegue essas informações na v$sql. 
 Vallew.
 --- Em oracle_br@yahoogrupos.com.br, dhvillegas denis.villegas@ 
 escreveu
 
  Pessoal,
  
  Preciso saber se existe alguma consulta ou query que esteja 
rodando e 
 o 
  tempo seja maior que 1 segundo, pra fins de analise, isso é 
possivel, 
  consigo estrair essa informação?
  
  abs
  Denis
 





[oracle_br] Re: Tempo de Resposta de SQL no Banco

2008-02-07 Por tôpico rei_do_delphi
Denis, não tenho acesso ao Oracle aqui no serviço, mas se muito não me 
engano, você consegue essas informações na v$sql. 
Vallew.
--- Em oracle_br@yahoogrupos.com.br, dhvillegas [EMAIL PROTECTED] 
escreveu

 Pessoal,
 
 Preciso saber se existe alguma consulta ou query que esteja rodando e 
o 
 tempo seja maior que 1 segundo, pra fins de analise, isso é possivel, 
 consigo estrair essa informação?
 
 abs
 Denis





RES: [oracle_br] Re: Tempo de Resposta de SQL no Banco

2008-02-07 Por tôpico Rafael Almeida Milanez
set timing on
 
select count(*) from user_objects;
 
set timing off



De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Gleyson 
Melo
Enviada em: quinta-feira, 7 de fevereiro de 2008 13:40
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Re: Tempo de Resposta de SQL no Banco



Fala Denis!

Deixa eu ver se entendi o que você quer.. lendo a sua mensagem, você quer
saber se existe alguma consulta demorando mais de um segundo. Essa é uma
pergunta muuuito específica.

Se fossem consultas demoradas de verdade, eu te recomendaria olhar na
v$session_longops. Já que você está falando em um tempo muito pequeno, eu te
recomendo fazer um sql_trace, se você tiver possibilidade.

alter session set sql_trace=true;
select * from tabela1;
select * from tabela1;
select * from tabela1;
alter session set sql_trace=false;

Depois você olha no user_dump_dest e procura o arquivo de trace.
Encontrando, você usa a ferramenta tkprof para convertê-lo para um formato
mais amigável e analisa por lá. Só não lembro se iniciando o trace dessa
forma ele te gera os tempos.

Essa abordagem do trace considera que você tem como monitorar um conjunto
específico de consultas para saber quanto tempo cada uma está demorando.

Em 07/02/08, rei_do_delphi [EMAIL PROTECTED] 
mailto:brunomaximomogi%40hotmail.com  escreveu:

 Denis, não tenho acesso ao Oracle aqui no serviço, mas se muito não me
 engano, você consegue essas informações na v$sql.
 Vallew.
 --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br  
 oracle_br%40yahoogrupos.com.br,
 dhvillegas [EMAIL PROTECTED]
 escreveu
 
  Pessoal,
 
  Preciso saber se existe alguma consulta ou query que esteja rodando e
 o
  tempo seja maior que 1 segundo, pra fins de analise, isso é possivel,
  consigo estrair essa informação?
 
  abs
  Denis
 

 


-- 
Atenciosamente,
Gleyson Melo
Oracle Database 10g Administrator Certified Professional

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



 


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



Re: [oracle_br] Re: Tempo de Resposta de SQL no Banco

2008-02-07 Por tôpico Gleyson Melo
Fala Denis!

Deixa eu ver se entendi o que você quer.. lendo a sua mensagem, você quer
saber se existe alguma consulta demorando mais de um segundo. Essa é uma
pergunta muuuito específica.

Se fossem consultas demoradas de verdade, eu te recomendaria olhar na
v$session_longops. Já que você está falando em um tempo muito pequeno, eu te
recomendo fazer um sql_trace, se você tiver possibilidade.

alter session set sql_trace=true;
select * from tabela1;
select * from tabela1;
select * from tabela1;
alter session set sql_trace=false;

Depois você olha no user_dump_dest e procura o arquivo de trace.
Encontrando, você usa a ferramenta tkprof para convertê-lo para um formato
mais amigável e analisa por lá. Só não lembro se iniciando o trace dessa
forma ele te gera os tempos.

Essa abordagem do trace considera que você tem como monitorar um conjunto
específico de consultas para saber quanto tempo cada uma está demorando.

Em 07/02/08, rei_do_delphi [EMAIL PROTECTED] escreveu:

   Denis, não tenho acesso ao Oracle aqui no serviço, mas se muito não me
 engano, você consegue essas informações na v$sql.
 Vallew.
 --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br,
 dhvillegas [EMAIL PROTECTED]
 escreveu
 
  Pessoal,
 
  Preciso saber se existe alguma consulta ou query que esteja rodando e
 o
  tempo seja maior que 1 segundo, pra fins de analise, isso é possivel,
  consigo estrair essa informação?
 
  abs
  Denis
 

  




-- 
Atenciosamente,
Gleyson Melo
Oracle Database 10g Administrator Certified Professional


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