Bonjour,
Comment peut on estimer la volumétrie moyenne des fichiers archivelog sur une periode donnée ?
En vous remerciant,
Francky
Bonjour,
Comment peut on estimer la volumétrie moyenne des fichiers archivelog sur une periode donnée ?
En vous remerciant,
Francky
Bonjour,
La vue V$ARCHIVED_LOG devrait faire votre bonheur.
Par exemple, pour savoir la quantité d'archive log générée chaque jour :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT trunc(next_time) Jour, round(sum(blocks*block_size/1024/1024)) "Taille en Mo" FROM v$archived_log GROUP BY trunc(next_time) ORDER BY 1 DESC ;
Mille et 1 Merci, je vais étudier cela de suite et je vous tiens au courant de la suite.
Merci
Attention, la requête donnée est globale à toutes les destinations (les logs peuvent être écrits à plusieurs endroits), ainsi que les threads des groupes d'archive log
https://docs.oracle.com/cd/B19306_01...htm#REFRN30011
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT NAME, VALUE FROM v$parameter WHERE NAME LIKE 'log_archive_dest%' AND NAME NOT LIKE 'log_archive_dest_state_%' and value is not null NAME VALUE log_archive_dest_1 LOCATION=/home/oracle/archlog/mabase/local MANDATORY log_archive_dest_2 LOCATION=/home/oracle/archlog/mabase/remote/logs
Donc vérifier les dest_id et les thread#, puis n'en prendre qu'un pour faire la somme.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 SELECT NAME, dest_id, thread#, sequence#, first_change#, BLOCKS FROM v$archived_log NAME DEST_ID THREAD# SEQU# FIRST_CHANGE# BLOCKS /home/oracle/archlog/mabase/local/1_140273_00.dbf 1 1 140273 47340636288 67512 /home/oracle/archlog/mabase/remote/logs/1_140273_00.dbf 2 1 140273 47340636288 67512 /home/oracle/archlog/mabase/local/1_140274_00.dbf 1 1 140274 47340668555 53907 /home/oracle/archlog/mabase/remote/logs/1_140274_00.dbf 2 1 140274 47340668555 53907 /home/oracle/archlog/mabase/local/1_140275_00.dbf 1 1 140275 47340702559 72964 /home/oracle/archlog/mabase/remote/logs/1_140275_00.dbf 2 1 140275 47340702559 72964 /home/oracle/archlog/mabase/local/1_140276_00.dbf 1 1 140276 47340756951 71534 /home/oracle/archlog/mabase/remote/logs/1_140276_00.dbf 2 1 140276 47340756951 71534
More Code : More Bugs. Less Code : Less Bugs
Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP
Bonjour ,
voici un petit script qui te donnera le nombre de sequence des archivelogs depuis une certaine periode :
si ça peut t'aider à estimer les fréquences des switchs logfile ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 select to_char(first_time,'dd/mm/yyyy') Jour, to_char(first_time,'hh24')||':00' Heure, avg(block_size*blocks) avg_bytes, count(1) nb, max(block_size*blocks) max_bytes, min(block_size*blocks) min_bytes from v$archived_log where sysdate - first_time <= nb_de_jours group by to_char(first_time,'dd/mm/yyyy'), to_char(first_time,'hh24') ;
Bonjour MCM,
Je ne comprends pas bien :
"puis n'en prendre qu'un pour faire la somme. "
Prendre 1 de quoi ?(Le dest_id ) Et faire la somme pour chaque dest_id ?
D'avance merci.
Ne prendre qu'un couple dest_id, thread#vérifier les dest_id et les thread#, puis n'en prendre qu'un pour faire la somme
Je ne peux pas tester sur les thread#, je n'ai pas de base en multi-thread d'archive log.
Mais tu peux toujours grouper par dest_id, thread#, les sommes devraient être identiques.
More Code : More Bugs. Less Code : Less Bugs
Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP
Alors le count(1) est équivalent à count(*), et c'est le nombre basculement de sequences journaux qui ont se sont
produit en une heure et en une journée, quand à v$archived_log.dest_id je n'ai pas affiché car je n'ai plusieurs destinations
hébérgeant les journaux de la base .
Voilà, j'éspère que c'est clair
Merci de votre aide ! Par contre il n'y a pas possibilité d'estimer la volumétrie que nécessitera les archivelog avant le passage de la base en mode archive log ?
Parce que la grosso modo on prend le problème par la fin, mais est ce possible de savoir la volumétrie des archive log au préalable (potentiellement parlant) afin de prévoir des disques adéquats au préalable pour stocker ces archive logs sur une période données ?
Merci pour votre aide
Oui c'est tout à fait possible, grâce à la vue V$LOG_HISTORY, qui enregistre les changements de fichiers redo (switch logfile).
On suppose que chaque changement est naturel (n'a pas été forcé) et correspond donc à un fichier redo plein.
Si on avait été en ARCHIVELOG, on aurait généré un volume égal au nombre de changements de redo multiplié par la taille d'un redo.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 -------------------------------- -- Estimation volume archivelogs -------------------------------- SET PAGESIZE 50 select trunc(first_time) "DATE", count(*) "BASCULES", count(*)/24 "MOYENNE / H", count(*) * max(taille) "Volume Mo" from v$log_history lh, (select max(bytes)/1024/1024 taille from v$log) l group by rollup(trunc(first_time)) order by trunc(first_time);
Consultant / formateur Oracle indépendant
Certifié OCP 12c, 11g, 10g ; sécurité 11g
Ma dernière formation Oracle 19c publiée sur Linkedin : https://fr.linkedin.com/learning/oracle-19c-l-administration
Je te suggère une fonctionnalité décrit dans ces url suivants :
http://www.siue.edu/~dbock/cmis565/module8-redo_log.htm paragraphe : About the FAST_START_MTTR_TARGET
http://www.dba-oracle.com/oracle_tip...ng_advisor.htm
Bonne chance !
Consultant / formateur Oracle indépendant
Certifié OCP 12c, 11g, 10g ; sécurité 11g
Ma dernière formation Oracle 19c publiée sur Linkedin : https://fr.linkedin.com/learning/oracle-19c-l-administration
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager