Mercredi 10 février 2010 3 10 /02 /Fév /2010 00:37

 

SCN System Change Number Oracle


Le SCN c’est quoi ?
On peut dire que c’est un identifiant interne unique qui s’accroit dans le temps (La fonction SCN possède une sorte d’horloge interne).
Chaque transaction commitée a un SCN associé, ce qui permet d’identifier les changements fait par un ordre SQL.

Le SCN joue un rôle important dans la consistance de la base de données Oracle, puisque toutes les opérations de restaurations se font à partir du SCN.

Le Thread SMON (System Monitor) se base sur ce SCN pour récupérer une instance après un arrêt anormal, et aussi pour vérifier que les entêtes des fichiers de données (Datafiles) et des fichiers de contrôles (Control Files) sont synchro au niveau du dernier SCN.

Voir le dernier SCN de la database


SQL> SELECT current_scn FROM V$DATABASE;
SQL> SELECT dbms_flashback.get_system_change_number() from dual;


Voir les SCN par ligne d’une Table

SQL> SELECT ora_rowscn FROM matable;

Attention si la clause ROWDEPENDENCIES n’a pas été incluse lors de la création de la table, vous ne verrez pas les SCN de chaque ligne mais le dernier SCN unique pour tous les Block physiques de données.


Connaitre la date (TIMESTAMP) à partir d’un numéro SCN

SQL> SELECT scn_to_timestamp(ora_rowscn) FROM maTable;
SQL> SELECT scn_to_timestamp(SCN) FROM DUAL;


Connaitre le numéro SCN à partir d’une date donnée

SQL> SELECT timestamp_to_scn(to_date('20/12/2009 19:53','DD/MM/YYYY HH24:MI')) "SCN"
     FROM dual;


Connaître les SCN et Date sur les 5 derniers jours environ.

Table utilisée par le Thread SMON (alimentée toute les 5 minutes environ)

SQL> SELECT time_dp,scn
     FROM smon_scn_time
     ORDER BY time_dp;



Voir les SCN des transactions en cours

SQL> SELECT SES_ADDR, START_SCNB
     FROM V$TRANSACTION
     ORDER BY START_SCNB;



Liens en rapport avec l'article et qui sont susceptibles de vous intéresser
• Oracle FLASHBACK VERSIONS QUERY
• Oracle FLASHBACK TRANSACTION QUERY
Par Daniel Roesch - Publié dans : REDOLOG / ARCHIVELOG
Ecrire un commentaire - Voir les 0 commentaires
Retour à l'accueil

Rechercher Articles Oracle SQL sur ce Site.

Loading

À lire aussi…

Download PDF Oracle

Rechercher sur le site

Oracle 10G - DBA -

Syndication

  • Flux RSS des articles
Contact - C.G.U. - Rémunération en droits d'auteur - Signaler un abus - Articles les plus commentés