Pular para o conteúdo
  • Este tópico contém 9 respostas, 4 vozes e foi atualizado pela última vez 11 anos, 4 meses atrás por Avatar de ericclauberericclauber.
Visualizando 10 posts - 1 até 10 (de 10 do total)
  • Autor
    Posts
  • #105619
    Avatar de ericclauberericclauber
    Participante

      Bom dia a todos!

      Agradeço desde já a ajuda!

      Tenho um servidor rodando Oracle Standard Edition One 11g com RedHat Linux 5 Enterprise.

      Anteriormente eram 8GB de memória, sendo que estava consumindo total, inclusive SWAP. Entao fiz um upgrade para 16Gb de memória. E desta forma quando iniciei o banco ficou LIVRE cerca de 9GB.

      Posteriormente mandei rodar o RMAN(backup database); E assim consumiu todo os 16gb de RAM e INCLUSIVE está utilizando SWAP, mas como se o SGA / TARGET_MEMORY É 6GB.

      Porque está consumindo todo os 16gb de RAM e SWAP, se o SGA / TARGET_MEMORY É 6GB? Como corrigir isso?

      Agradeço,

      Eric Clauber

      #105620
      Avatar de lobomaudiegolobomaudiego
      Participante

        Bom Dia Eric!,

        Você pode retornar as seguintes informações:

        show parameter sga
        show parameter memory
        show parameter hash_area_size

        top -c -u oracle(oracle_user)
        vmstat

        Att,

        Diego Monteiro

        #105621
        Avatar de ericclauberericclauber
        Participante

          BOm dia Diego, segue informações solicitadas, mas no comando TOP, não vi processo VMSTAT

          SQL> show parameter sga;

          NAME TYPE VALUE
          ———————————— ———– ——————————
          lock_sga boolean FALSE
          pre_page_sga boolean FALSE
          sga_max_size big integer 6016M
          sga_target big integer 0
          SQL> show parameter memory

          NAME TYPE VALUE
          ———————————— ———– ——————————
          hi_shared_memory_address integer 0
          memory_max_target big integer 6016M
          memory_target big integer 6016M
          shared_memory_address integer 0
          SQL> show parameter hash_area_size;

          NAME TYPE VALUE
          ———————————— ———– ——————————
          hash_area_size integer 131072

          #105624
          Avatar de lobomaudiegolobomaudiego
          Participante

            Eric Bom dia!,

            1º comando é o:
            top -c -u oracle


            vmstat

            Não vi problema com o seus parametros, somente se certifique que os processos que logam no banco não usem o “alter session set hash_area_size=xxxxxxxx” pois esse parametro cria uma alocação de memória por sessão.
            Verifique o seu alert.log e post as ultimas linhas (poste retorno)

            tail -100f alert_ORACLE_SID.log

            Execute também este comando (poste retorno):


            SELECT *
            FROM v$memory_target_advice
            ORDER BY memory_size;

            E a verificação se está causando algum wait event por sessão:
            Rode 3 vezes (poste retorno)


            set linesize 9999
            col event for a30
            col sid for 9999
            col serial for 99999
            col spid for a5
            col program for a31
            col username for a10
            col machine for a30
            col sw for 99999
            col osuser for a15
            col kill for a4
            col p1text for a12
            COLUMN sql_exec_start FORMAT a19 HEADING 'Inic. Exec. Sql'

            SET TERMOUT OFF;
            COLUMN current_instance NEW_VALUE current_instance NOPRINT;
            SELECT rpad(instance_name, 17) current_instance FROM v$instance;
            ALTER SESSION SET NLS_DATE_FORMAT='DD/MM/YYYY HH24:MI:SS';
            SET TERMOUT ON;

            SELECT '@k ' as kill,
            W.SID,
            S.SERIAL# as serial,
            P.SPID,
            S.USERNAME,
            S.OSUSER,
            W.EVENT,
            W.SECONDS_IN_WAIT as sw,
            s.sql_id,
            w.p1,
            w.p1text,
            s.sql_exec_start sql_exec_start,
            S.PROGRAM,
            REPLACE(REPLACE(S.MACHINE, 'BR-LIHI', ''), 'BR-LIHI-', '') AS MACHINE
            FROM V$SESSION_WAIT W, V$SESSION S, V$PROCESS P
            WHERE W.SID = S.SID
            AND S.PADDR = P.ADDR
            AND W.WAIT_CLASS != 'Idle'
            ORDER BY W.SECONDS_IN_WAIT, W.SID
            /

            Att,

            Diego Monteiro

            #105632
            Avatar de jlprebjlpreb
            Participante

              Olá.

              Altere o parametro filesystemio_options e reinicie a instance.
              alter system set filesystemio_options=’setall’ scope=spfile;
              att.

              #105635
              Avatar de ericclauberericclauber
              Participante

                Olá Diego, desculpe a demora. Segue retorno abaixo.

                1- v$memory_target_advice ****************************

                MEMORY_SIZE MEMORY_SIZE_FACTOR ESTD_DB_TIME ESTD_DB_TIME_FACTOR VERSION
                ———– —————— ———— ——————- ———-
                3008 ,5 16721 1,0001 0
                4512 ,75 16719 1 0
                5264 ,875 16719 1 0
                6016 1 16719 1 0
                6768 1,125 16717 ,9999 0
                7520 1,25 16717 ,9999 0
                8272 1,375 16717 ,9999 0
                9024 1,5 16717 ,9999 0
                9776 1,625 16717 ,9999 0
                10528 1,75 16717 ,9999 0
                11280 1,875 16717 ,9999 0

                MEMORY_SIZE MEMORY_SIZE_FACTOR ESTD_DB_TIME ESTD_DB_TIME_FACTOR VERSION
                ———– —————— ———— ——————- ———-
                12032 2 16717 ,9999 0

                ******************************************************************
                2- set line size………..

                KILL SID SERIAL SPID USERNAME OSUSER EVENT SW SQL_ID P1 P1TEXT Inic. Exec. Sql PROGRAM MACHINE
                —- —– —— —– ———- ————— —————————— —— ————- ———- ———— ——————- ——————————- ——————————
                @k 361 1689 15948 SYS oracle SQL*Net message to client 0 d8nabc2h100v1 1650815232 driver id 02/07/2013 15:17:31 sqlplus@orcl-omega (TNS V1-V3) orcl-omega

                *******************************************************************

                3- Ultimas 20 linhas do alert.log

                alert
                Thread 1 advanced to log sequence 9753 (LGWR switch)
                Current log# 3 seq# 9753 mem# 0: /u01/app/oracle/oradata/WINT/redo03.log
                Tue Jul 02 14:55:43 2013
                Archived Log entry 9596 added for thread 1 sequence 9752 ID 0x573dd493 dest 1:
                Tue Jul 02 15:04:28 2013
                Thread 1 advanced to log sequence 9754 (LGWR switch)
                Current log# 1 seq# 9754 mem# 0: /u01/app/oracle/oradata/WINT/redo01.log
                Tue Jul 02 15:04:29 2013
                Archived Log entry 9597 added for thread 1 sequence 9753 ID 0x573dd493 dest 1:
                Tue Jul 02 15:13:35 2013
                Thread 1 cannot allocate new log, sequence 9755
                Checkpoint not complete
                Current log# 1 seq# 9754 mem# 0: /u01/app/oracle/oradata/WINT/redo01.log
                Thread 1 cannot allocate new log, sequence 9755
                Private strand flush not complete
                Current log# 1 seq# 9754 mem# 0: /u01/app/oracle/oradata/WINT/redo01.log
                Thread 1 advanced to log sequence 9755 (LGWR switch)
                Current log# 2 seq# 9755 mem# 0: /u01/app/oracle/oradata/WINT/redo02.log
                Tue Jul 02 15:13:44 2013
                Archived Log entry 9598 added for thread 1 sequence 9754 ID 0x573dd493 dest 1:

                #105636
                Avatar de CleitonHanzenCleitonHanzen
                Participante

                  Opá…

                  Eric, qual ferramenta você está usando para diagnosticar que o swap está em uso? Bom, se você estiver usando o top, talvez não seja a ferramenta mais adequada.
                  Por padrão, o Linux faz cache tanto de memória RAM quanto de Swap e isso é amplamente discutido/explicado na internet.

                  Se quiser realmente ver se o servidor está fazendo swap, rode o comando “sar -W”.

                  #105638
                  Avatar de ericclauberericclauber
                  Participante

                    Olá Cleiton, eu utilizo o free (free -m).

                    total used free shared buffers cached
                    Mem: 16041 15868 173 0 341 13954
                    -/+ buffers/cache: 1572 14469
                    Swap: 2000 609 1390

                    o comando ‘sar -W’, nao entendi muito. Mas a coluna ‘pswpin/s’ esta muito utlizada.

                    #105640
                    Avatar de CleitonHanzenCleitonHanzen
                    Participante

                      Opá…

                      Antes de mais “nada”, vou te dizer que você SÓ tem 14469MB de memória livre.
                      Dúvida??? Acessa esse link aqui que fica facinho de entender: http://www.linuxatemyram.com/

                      Outra coisa: Somente “swap in” não é problema, o problema é se tiver bastante swap in e swap out (geralmente quer dizer que o S.O. está precisando tirar página do disco para a memória e vice-versa, pq a quantidade de memória é insuficiente para atender aos aplicativos). (Se for pesquisar a fundo e entender, nem isso quer dizer muita coisa, pois pode estar sendo feita essa troca em processos que estão inativos no S.O)

                      Outra coisa, você tem 16GB de RAM e somente 2GB de Swap?? Recomendo você dar uma lida nesse doc. aqui: http://docs.oracle.com/cd/E11882_01/ins … m#CHDCEBFF

                      Sei que a Oracle as vezes parece que escreve “besteira”, mas com estas áreas de Swap, eu nunca brinco não…. rsrsrsrsrs…..

                      #105648
                      Avatar de ericclauberericclauber
                      Participante

                        Pois é Cleiton. dei uma olha no DOC.

                        Neste mesmo servidor ainda com 8gb de RAM, rodava Oracle 10g Enterprise. com os mesmos 2GB de swap(coloquei mesmo sabendo que deveria ser no mínimo o dobro, serve de aprendizado).

                        E nunca tiver problema com a Swap. Entao após instalar o 11g SEO, esta utilizando a RAM e a SWAP até o talo, e estava tendo problemas.

                        Foi ai que decidi dobrar a RAM de 8gb para 16gb. Teoricamente não deveria esta tendo problemas com tanto consumo de RAM e inclusive a SWAP.

                      Visualizando 10 posts - 1 até 10 (de 10 do total)
                      • Você deve fazer login para responder a este tópico.
                      plugins premium WordPress