Hevandro, eu ja rodei todos os advisors que o oracle recomendou, tanto os de SQL quanto os de segmentos. Obrigado!
--- Em oracle_br@yahoogrupos.com.br, Hevandro Veiga <hevandro83@...> escreveu > > Raul, > > FINDING 1: 73% impact (1355 seconds) > ------------------------------------ > SQL statements consuming significant database time were found. > > Problemas com SQLs, já rodou o SQL tuning advisor em cima dessas queries ou > o SQL Access Advisor no workload? > > FINDING 2: 50% impact (934 seconds) > ----------------------------------- > The SGA was inadequately sized, causing additional I/O or hard parses. > > RECOMMENDATION 1: DB Configuration, 47% benefit (881 seconds) > ACTION: Increase the size of the SGA by setting the parameter > "sga_target" to 27648 M. > > O Oracle tá te pedindo para aumentar a memória da SGA. Concordo com os > demais colegas com relação ao SWAP, você deveria reduzir e não aumentar como > o Oracle tá pedindo. No entanto existe um problema aqui. O optimizer parece > não conseguir compartilhar os cursores, pode ser falta de variáveis bind, > excesso de ddl... > > SELECT PLAN_HASH_VALUE,COUNT(*) > FROM V$SQL > WHERE PARSING_SCHEMA_NAME NOT IN > ('SYS', > > > 2011/6/8 Ivan Ricardo Schuster <ivanrs79@...> > > > > > > > Raul, > > > > Primeiramente: Não abra mão de segurança para compensar o problema de > > I/O. RAID 0 não é opção para bancos de dados! > > > > Sim, swap é uma grande suspeita, o problema de IO parece não ser > > somente "System", mas geral. > > > > Considere as recomendações dos colegas para ajustar os parametros de > > memória, em geral recomendo a configuração de valores fixos de > > memória, ou ao menos definir valores mínimos para cada item. > > > > Acredito que este Linux seja 64 bits, certo? > > De qualquer forma, você pode considerar a utilização de hugepages em > > seu servidor: > > http://ivanschuster.wordpress.com/category/gerenciamento-de-memoria/ > > > > Recomendo ainda que você verifique as dicas em: > > http://www.puschitz.com/TuningLinuxForOracle.shtml > > > > Principalmente no que se refere a ativar Asynchronous I/O, caso o > > ajuste de memória não resolva. > > > > Sobre Patch Set Updates (PSU), são pacotes de patches liberados pela > > Oracle trimestralmente e que corrigem bugs de segurança no seu banco > > de dados. Apesar de não serem patches especificos de desempenho, podem > > corrigir algum problema relacionado. > > > > 2011/6/8 Raul Francisco Costa F. de Andrade, DBA <raulfdba@...>: > > > > > Eu também apostaria em diminuir um pouco a quantidade de memória que está > > > sendo dedicada ao Oracle. > > > A questão do SO estar fazendo SWAP é pertinente... > > > > > > Raul > > > ---------------------------------------------------------- > > > *Raul Francisco da Costa Ferreira de Andrade* > > > *DBA - OCP - Oracle Certified Professional* > > > *COBIT Foundation 4.1 > > > Celular:(41)8855-8874 Claro > > > *email: raulfdba@... > > > Skype: raul.andrade > > > msn:raulandrade@... > > > www.clickdba.com > > > > > > *"A adversidade leva alguns a serem vencidos > > > e outros a baterem recordes." * > > > William Arthur Ward > > > > > > > > > > > > Em 8 de junho de 2011 10:46, raulcsneto <raulcsneto@...> escreveu: > > > > > >> > > >> > > >> Bom dia Gerson, > > >> Até semana passada eu tinha dois volumes separados de RAID 10 com 4 > > discos > > >> de 143Gb 15.000RPM um para dados e outro para índices (o problema já > > ocorria > > >> nesta ocasião) então após ler algumas coisas e conversar com um amigo, > > que > > >> já fez isso e obteve sucesso, decidi criar um volume maior, juntando os > > 8 > > >> discos, assim eu teria o dobro de discos para a controladora fazer > > Striping > > >> no momento de leitura/gravação talvez, melhorando o problema de I/O, > > porém > > >> parece que tudo permaneceu como estava (ou seja acho que o problema não > > era > > >> disco) > > >> > > >> --- Em oracle_br@yahoogrupos.com.br, Gerson Junior <gerson.vasconcelos@ > > ...> > > >> escreveu > > >> > > > >> > Pelo que vi, dados e indices estão no mesmo range de discos, é isso? > > >> > > > >> > Não seria viável separar? > > >> > > > >> > > > >> > > > >> > > > >> > Gerson S. de Vasconcelos Júnior > > >> > OCA DBA - Oracle Certified Associate > > >> > Fone: (81) 9816-0236 > > >> > Msn: gerson.vasconcelos@ > > >> > Skype: gersonvjunior > > >> > http://www.diaadiaoracle.com.br/ > > >> > > > >> > > > >> > Em 8 de junho de 2011 09:06, raulcsneto <raulcsneto@> escreveu: > > >> > > >> > > > >> > > > > >> > > > > >> > > Bom dia > > >> > > > > >> > > Tenho um banco de 230Gb rodando no 10G estou tendo muitos problemas > > de > > >> > > System I/O, será que alguem poderia me ajudar a verificar a causa > > deste > > >> > > problema, segue abaixo um resumo do meu cenário e das ações que já > > >> tomei: > > >> > > > > >> > > O Oracle 10G roda em um servidor Redhat 5 com dois processadores > > >> Quad-core > > >> > > Xeon 2.66Ghz, 20Gb de memória, dos quais 18Gb estão alocadas para o > > >> oracle. > > >> > > > > >> > > Possuo um Disco Virtual com 8 discos SAS de 15.000Rpm e 143Gb em > > RAID > > >> 10, > > >> > > totalizando 544Gb para Dados e Indices; > > >> > > > > >> > > Possuo um Disco Virtual com 2 discos SAS de 15.000Rpm e 143Gb em > > RAID > > >> 0, > > >> > > totalizando 272Gb para Redo; > > >> > > > > >> > > Possuo um Disco Virtual com 2 discos SAS de 15.000Rpm e 143Gb em > > RAID > > >> 0, > > >> > > totalizando 272Gb para Archives; > > >> > > > > >> > > Estes tres volumes estão em uma controladora PERC6/E todos > > segmentados > > >> em > > >> > > Stripes de 512k; > > >> > > > > >> > > Possuo Tablespaces separadas para Dados e Indices criadas com > > alocação > > >> > > uniforme de 512k com datafiles de 2Gb; > > >> > > > > >> > > Recentemente movi todas as tabelas e indices para tablespaces novas > > >> para > > >> > > eliminar a fragmentação; > > >> > > > > >> > > Caso alguem conheça algo que eu possa fazer para tentar descobrir > > onde > > >> está > > >> > > o problema, seria de grande valor par mim, pois já esgotei todas as > > >> minhas > > >> > > possibilidades, e a várias noites já não sei o que é dormir direito. > > >> > > > > >> > > Seguem abaixo algumas querys que fiz, meus resultados estão de > > acordo > > >> em > > >> > > todas elas: > > >> > > > > >> > > ÍNDICE DE ACERTOS NO CACHE > > >> > > ========================== > > >> > > (quanto mais BHR próximo a 1, melhor) > > >> > > > > >> > > column bhr format 9.99 > > >> > > column mydate heading 'Ano Me Di Hora' > > >> > > select to_char(end_interval_time,'yyyy-mm-dd HH24') mydate, > > >> > > new.name "Buffer Pool", > > >> > > (((new.consistent_gets-old.consistent_gets)+ > > >> > > (new.db_block_gets-old.db_block_gets))- > > >> > > (new.physical_reads-old.physical_reads)) / > > >> > > ((new.consistent_gets-old.consistent_gets)+ > > >> > > (new.db_block_gets-old.db_block_gets)) bhr > > >> > > from > > >> > > dba_hist_buffer_pool_stat old, > > >> > > dba_hist_buffer_pool_stat new, > > >> > > dba_hist_snapshot sn > > >> > > where > > >> > > (((new.consistent_gets-old.consistent_gets)+ > > >> > > (new.db_block_gets-old.db_block_gets))- > > >> > > (new.physical_reads-old.physical_reads)) / > > >> > > ((new.consistent_gets-old.consistent_gets)+ > > >> > > (new.db_block_gets-old.db_block_gets)) > 0 > > >> > > and > > >> > > new.name = old.name > > >> > > and > > >> > > new.snap_id = sn.snap_id > > >> > > and > > >> > > old.snap_id = sn.snap_id-1 > > >> > > order by mydate; > > >> > > > > >> > > ÍNDICE DE ACERTOS DE CACHE PARA OBJETOS DO DICIONÁRIO DE DADOS > > >> > > ============================================================== > > >> > > (hit ratio deve estar próximo a 1 - apesar de ser inviável para > > alguns > > >> > > objetos, como sequences) > > >> > > > > >> > > select > > >> > > parameter "Parametro", > > >> > > gets, > > >> > > Getmisses , > > >> > > getmisses/(gets+getmisses)*100 "Taxa de erro", > > >> > > (1-(sum(getmisses)/ (sum(gets)+sum(getmisses))))*100 "Taxa de > > acerto" > > >> > > from v$rowcache > > >> > > where gets+getmisses <>0 > > >> > > group by parameter, gets, getmisses ; > > >> > > > > >> > > ÍNDICE DE ACERTOS NO CACHE POR SESSÃO > > >> > > ===================================== > > >> > > (hit ratio deve estar próximo a 1 - apesar de 1 ser improvável) > > >> > > > > >> > > select Username, > > >> > > OSUSER, > > >> > > Consistent_Gets, > > >> > > Block_Gets, > > >> > > Physical_Reads, > > >> > > 100*( Consistent_Gets + Block_Gets - Physical_Reads)/ > > >> > > ( Consistent_Gets + Block_Gets ) "Hit Ratio %" > > >> > > from V$SESSION,V$SESS_IO > > >> > > where V$SESSION.SID = V$SESS_IO.SID > > >> > > and ( Consistent_Gets + Block_Gets )>0 > > >> > > and username is not null > > >> > > order by Username,"Hit Ratio %"; > > >> > > > > >> > > ÍNDICES DE CONTENÇÃO DE LATCH DE REDO > > >> > > ===================================== > > >> > > (quanto mais abaixo de 1 os ratios, melhor) > > >> > > > > >> > > SET feedback OFF > > >> > > COLUMN name FORMAT a15 > > >> > > COLUMN gets FORMAT 99999999 > > >> > > COLUMN misses FORMAT 999999 > > >> > > COLUMN immediate_gets FORMAT 99999999 HEADING 'IMM_GETS' > > >> > > COLUMN immediate_misses FORMAT 99999999 HEADING 'IMM_MISSES' > > >> > > PROMPT Examining Contention for Redo Log Buffer Latches... > > >> > > PROMPT ---------------------------------------------------- > > >> > > > > >> > > SELECT name, gets, misses, immediate_gets, immediate_misses, > > >> > > Decode(gets,0,0,misses/gets*100) ratio1, > > >> > > Decode(immediate_gets+immediate_misses,0,0, > > >> > > immediate_misses/(immediate_gets+immediate_misses)*100) ratio2 > > >> > > FROM v$latch WHERE name IN ('redo allocation', 'redo copy'); > > >> > > > > >> > > ORDENAÇÕES EM MEMÓRIA/DISCO > > >> > > =========================== > > >> > > (quanto mais memória e menos disco, melhor) > > >> > > > > >> > > SET HEADING OFF > > >> > > SET FEEDBACK OFF > > >> > > COLUMN name FORMAT a30 > > >> > > COLUMN value FORMAT 99999990 > > >> > > > > >> > > SELECT name, value FROM v$sysstat > > >> > > WHERE name IN ('sorts (memory)', 'sorts (disk)'); > > >> > > > > >> > > > > >> > > > > >> > > > >> > > > >> > [As partes desta mensagem que não continham texto foram removidas] > > >> > > > >> > > >> > > >> > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > ------------------------------------ > > > > > > ---------------------------------------------------------- > > >>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de > > inteira responsabilidade de seus remetentes. > > > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ > > > ---------------------------------------------------------- > > >>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » > > Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! > > VISITE: http://www.oraclebr.com.br/ > > > ---------------------------------------------------------- Links do > > Yahoo! Grupos > > > > > > > > > > > > > -- > > Ivan Ricardo Schuster > > OCP 10g/11g > > OCE RAC 10g/Linux > > > > > > > > > > -- > Hevandro Veiga > Oracle Certified Professional 11g > OCE RAC 10g > > > [As partes desta mensagem que não continham texto foram removidas] >