22 mars 2017

Tout le dictionnaire de données Oracle n'est pas dans DICT

       IntroductionUne base de données Oracle 11gr2 à sa création comporte à peu près 9000 tables et vues système différentes. Celles-ci composent le dictionnaire de données qui est la propriété du user SYS. Il va de soi qu'en cas de problème, trouver la bonne vue dans ce labyrinthe sera extrêmement difficile! Prenons l'exemple d'un message d'erreur relatif à un trigger. Vous connaissez la vue DBA_TRIGGERS mais saviez-vous qu'il existe les vues DBA_INTERNAL_TRIGGERS, DBA_TRIGGER_ORDERING,... [Lire la suite]
Posté par David DBA à 22:33 - - Commentaires [0] - Permalien [#]
Tags : ,

19 mars 2017

Evolution taille table : Insert, Delete, Truncate, Drop, Shrink, Move

          IntroductionUne légende tenace dans le monde Oracle dit qu'une fois les données d'une table supprimées, l'espace occupé par ces lignes est définitivement perdu! Oui, ça a l'air idiot mais on trouve encore cette histoire sur pas mal de forums. La réalité est plus complexe : une fois que des blocs de données ont été alloués à une table, ces blocs restent alloués à la table, même si l'intégralité des données est supprimée par un DELETE! Néanmoins ces blocs seront réutilisables lors... [Lire la suite]
Posté par David DBA à 12:33 - - Commentaires [0] - Permalien [#]
Tags : , , , , , ,
05 mars 2017

Comment le nom des structures mémoires Oracle X$ est construit

                           IntroductionDans mon article "Trouver les objets Oracle cachés : tables système xxx$, structures mémoire X$xxx, paramètres cachés, packages PL/SQL cachés" je parlais des structures mémoires X$xxx. Celles-ci ont des noms très particuliers comme X$KSDAFT ou X$KQFOPT et je vous mets au défi de deviner à quoi elles servent rien qu'avec leur nom! Malheureusement ces structures mémoires ne sont... [Lire la suite]