Bonjour,
une question m'est passé par la tête tout récemment.
Comment est géré sous db2 le cas où une transaction n'a pas été finie pour cause d'arrêt brutal de la machine (ie. coupure de courant)
Je me souviens sous oracle d'un vague REDO-LOG qui reprenait les transactions là où elles en etaient, mais je suis pas sûr que ce soit vraiment ca le principe exact, et je ne suis pas sur que db2 fasse de même.
Quelqu'un pour m'eclairer ?
Merci.
# L'intégrité est garantie
Posté par Olivier Jeannet . Évalué à 3.
Le Redo-log peut permettre de rejouer une transaction non encore écrite dans les fichiers de données; sur Oracle, les transactions sont d'abord "écrites" (en fait on y stocke les données avant modif et après modif) dans le redo-log, et ensuite dans les "vrais" fichiers de données. Il faut peut-être que tu regardes les logs de la base pour savoir si ta transaction a pu être rejouée, ou alors le contenu des tables bien sûr. J'ai tendance à penser que si le courant a été coupé pendant la transaction, elle ne pourra pas être rejouée car pas entièrement stockée dans le redo-log, mais je peux me tromper.
[^] # Re: L'intégrité est garantie
Posté par cho7 (site web personnel) . Évalué à 2.
En fait le redo-log s'appele rollforwarding chez ibm, et ca fonctionne a priori pareil que sous oracle : donc la transaction est a priori perdue
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.