Voilà, j'ai un problème que je ne comprend absolument pas sur une installation complexe avec Oracle 9i (version 9.2).
J'explique en 1er le système :
J'ai 2 instances sur 2 machine différentes qui sont en réplication maitre à maitre.
L'instance I1 est utilisée comme base de production, c'est à dire que les utilisateur se connecte sur celle-là.
L'instance I2 est surtout utilisée comme secours si I1 à des problèmes.
Sur l'instance I2, il y a également une réplication de certaines tables par Vues matérialisées (Snapshot) afin de mettre à jour des instances se trouvant sure des ordinateurs portables.
Maintenant le problème :
Sur I1, il y a un tablespace UNDOTSB01 avec une taille de création de 1,5Go. La taille actuelle est toujours de 1.5 Go et le taux d'occupation est d'environ 10%.
Sur I2, il y a un tablespace UNDOTBS1 avec une taille de création de 1,5Go. La taille actuelle est de plus de 6 Go et le taux d'occupation est toujours supérieure à 90%. Et, bien sur, arrivé à 100%, comme il est en AUTOEXTEND, le fichier grossit.
Sachant que I2 ne sert que de copie à I1, je ne comprend pas pourquoi dans le cas de I1, le tablespace undo ne grossit pas (les rollbacks segments sont donc bien gérés) et dans le cas de I2, qui doit utiliser le tablespace UNDO seulement quand il execute les transactions de replication, ce tablespace ne fait que s'étendre. C'est à croire que les transaction dans les rollback segment ne sont jamais enlevées, mais je ne sais pas.
La conséquence de cela, c'est que je n'ai plus de place sur le disque et que la base s'arrete (et donc la réplication).
Si quelqu'un à des connaissances suffisantes sur la gestion du TS UNDO pour me mettre sur la piste, ce serait sympa de me répondre.
Je me demande également si je ne pourrais pas diminer la taille de ce TS via une commande Oracle.
Merci d'avance de m'aider.
PS : quelques infos de parametres qui sont identique sur les 2 instances
UNDO_MANAGEMENT = AUTO
UNDO_RETENTION = 10800
UNDO_SUPPRESS_ERRORS = FALSE
UNDO_TABLESPACE = UNDOTBS1
Partager