IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration Oracle Discussion :

Redo Log Buffer


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 17
    Par défaut Redo Log Buffer
    Bonjour,

    On ma demandé de regarder un peu les performances d'une instance et je tic sur le Log Buffer. Les valeurs que j'ai me semble hallucinantes.

    Server 10g avec une gestion manuelle de la mémoire, (je pense passer en SGA auto après les tests).

    Log buffer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT  ROUND(value/100000) AS "Redo Log Buffer(Mo)"  
    FROM    V$PARAMETER 
    WHERE   name = 'log_buffer';
     
    Redo Log Buffer(Mo)    
    ---------------------- 
    143                    
     
    1 rows selected
    Waits :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT  name, value 
    FROM    V$SYSSTAT
    WHERE   name IN ('redo log space requests','redo buffer allocation retries','redo entries');
     
    NAME                            VALUE                  
    ------------------------------- ------- 
    redo entries                    7002837                
    redo buffer allocation retries      950                    
    redo log space requests            6090
     
    3 rows selected
    Switchs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SELECT  ROUND(AVG((( b.first_time - a.first_time ) * 3600*24)/60)) AS "MINUTES"
    FROM    v$loghist  a 
    JOIN    v$loghist  b
    ON      b.sequence# = a.sequence# + 1
    WHERE   a.first_time 
    BETWEEN SYSDATE - 7
    AND     SYSDATE;
     
    MINUTES                
    ---------------------- 
    144                    
     
    1 rows selected
    Merci à vous

  2. #2
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Par défaut
    Qu'est-ce qui vous gêne plus précisément ?

    Votre tampon REDO ne fait pas 143 Mo, mais 14,3 Mo, si vous divisez correctement par 1 million.

    La vue V$SYSSTAT n'est pas spécialement liée à des attentes. Elle indique simplement quelle quantité de "ressources" a été consommée depuis le démarrage de l'instance. Comme on ne sait pas depuis quand votre instance est démarrée, ni si votre charge DML est importante, on ne peut faire aucun commentaire sur le fait que 7 millions d'entrées ont eu lieu dans le tampon REDO.

    Quant à la fréquence moyenne de changement de fichier REDO, que donne ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select count(*) "nombre changements", 24*7*60/count(*) "intervalle moyen (min)"
    from v$log_history 
    where first_time >= sysdate -7;

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 17
    Par défaut
    Autant pour moi pour la division

    Pouvez-vous m'indiquer la signification réelle de 'redo log space request', pour moi c'est le nombre d'attente durant le transfert "buffer->file".

    La moyenne des switchs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    SELECT count(*) "nombre changements", 24*7*60/count(*) "intervalle moyen (min)"
    FROM v$log_history 
    WHERE first_time >= sysdate -7;
     
    nombre changements     intervalle moyen (min) 
    ---------------------- ---------------------- 
    71                     141,971 
     
    1 rows selected
    Concernant le contexte : C'est une base récemment migrée de 8.1.7 vers 10gR2 (il y a deux semaines ) hébergeant les données d'un ERP (IFS) ce qui expliquerai le pic de DML...

    14Mo pour le log buffer ça me semble beaucoup...

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 17
    Par défaut
    J'ai aussi cette requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    SELECT to_char(first_time,'YYYY-MON-DD') day,
    to_char(sum(decode(to_char(first_time,'HH24'),'00',1,0)),'99') "00",
    to_char(sum(decode(to_char(first_time,'HH24'),'01',1,0)),'99') "01",
    to_char(sum(decode(to_char(first_time,'HH24'),'02',1,0)),'99') "02",
    /****************************************/
    /* add more hours here to fill out the day */
    /****************************************/
    to_char(sum(decode(to_char(first_time,'HH24'),'22',1,0)),'99') "22",
    to_char(sum(decode(to_char(first_time,'HH24'),'23',1,0)),'99') "23"
    FROM v$log_history
    GROUP by to_char(first_time,'YYYY-MON-DD');
     
    DAY           00  01  02  03  04  05  06  07  08  09  10  11  12  13  14  15  16  17  18  19  20  21  22  23  
    ------------- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- 
    2010-AOÛT -01   1   0   0   1   0   0   0   0   1   0   0   0   0   0   1   0   1   1   0   0   0   0   1   0 
    2010-AOÛT -02   0   1   0   0   0   0   1   0   0   8   7   1   0   0   0   1   1   0   1   0   0   0   1   1 
    2010-AOÛT -03   0   0   0   1   0   0   0   0   0   3   1   0   1   0   0   0   2   0   0   1   0   0   1   0 
    2010-AOÛT -04   1   0   0   0   1   0   0   0   0   0   1   0   0   0   0   1   1   1   0   0   0   0   1   1 
    2010-AOÛT -05   0   0   0   1   0   0   0   0   0   1   0   0   0   0   1   0   1   1   0   0   0   0   1   1 
    2010-AOÛT -06   0   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 
    2010-JUIL.-20   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0  25  48 ###  17   1   0   2   0 
    2010-JUIL.-21   0   0   0   1   0   0   0   0   2   0 ### ###   2  19   0  76 ### ###  35   0   0   0   4   1 
    2010-JUIL.-22   0   0   0   0   0   0   0   0   7  26  12  26  60 ###  31   0  89  53   0   0   0   0   2   0 
    2010-JUIL.-23   1   0   0   0   0   0   0   0   0   4  50   0   0   1   9   1   5   1   0   0   0   0   1   0 
    2010-JUIL.-24   1   0   0   0   1   0   0   0   1   0   0   0   0   0   1   0   1   1   0   0   0   0   1   0 
    2010-JUIL.-25   1   0   0   0   0   1   0   0   0   0   0   1   0   0   0   0   2   0   0   0   1   0   0   0 
    2010-JUIL.-26   1   0   0   0   0   1   0   0   0   0   0   1   0   0   0   0   2   0   0   1   0   0   1   0 
    2010-JUIL.-27   1   0   0   0   0   1   0   0   0   0   1   0   0   0   0   1   1   0   1   0   0   0   1   0 
    2010-JUIL.-28   1   0   0   0   0   0   1   0   0   0   1   0   0   1   0   0   2   0   0   0   0   1   0   1 
    2010-JUIL.-29   0   0   1   0   0   0   0   0   1   0   1   0   0   0   1   0   2   0   0   1   0   0   1   0 
    2010-JUIL.-30   1   0   0   1   0   0   0   0   1   0   0   0   0   1   0   0   2   0   0   0   1   0   1   0 
    2010-JUIL.-31   1   0   0   0   0   0   1   0   1   0   0   0   0   0   1   0   1   1   0   0   0   0   1   0 
     
    18 rows selected
    Bien à vous !

  5. #5
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Par défaut
    14M pour le tampon REDO, ça surprend au début, mais c'est une valeur tout à fait courante en V10.

    Pour la signification des différentes statistiques de V$SYSSTAT, la source première est ici :
    http://download.oracle.com/docs/cd/B...02.htm#i375475


    Je pense que vous vous focalisez inutilement sur ce sujet, car vous ne savez pas ce que vous cherchez.

  6. #6
    Membre expérimenté Avatar de Ahmed AANGOUR
    Homme Profil pro
    DBA Oracle
    Inscrit en
    Janvier 2010
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : DBA Oracle

    Informations forums :
    Inscription : Janvier 2010
    Messages : 139
    Par défaut
    Citation Envoyé par mrmax Voir le message
    Bonjour,

    On ma demandé de regarder un peu les performances d'une instance et je tic sur le Log Buffer. Les valeurs que j'ai me semble hallucinantes.
    Salut,

    qu'est-ce qu'on te demande exactement?
    Y'a t'il des problèmes de perf sur cette base? si oui quels sont-ils?

Discussions similaires

  1. [RESTAURATION] Perte d'un redo LOg
    Par PpPool dans le forum Oracle
    Réponses: 7
    Dernier message: 14/02/2006, 17h59
  2. [REDO LOG] Comment vider le journal de transaction
    Par vsavoir dans le forum Oracle
    Réponses: 4
    Dernier message: 02/01/2006, 23h27
  3. [Redo log] : augmenter la taille des fichiers
    Par user_oracle dans le forum Oracle
    Réponses: 3
    Dernier message: 29/11/2005, 19h49
  4. standby redos logs
    Par aline dans le forum Oracle
    Réponses: 13
    Dernier message: 08/08/2005, 12h58
  5. Statuts des redo log
    Par shirai dans le forum Oracle
    Réponses: 28
    Dernier message: 03/02/2005, 18h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo