Posted By: medved (A~z na v~eky Mikov~ce.) on 'CZdatabases' Title: Re: Dvoufazovy commit(was: teorie) Date: Thu Feb 10 18:00:34 2000 > Muze mi nekdo poradit > co je to dvoufazovy potvrzovaci protokol Klasicke rizeni transakci asi znas. Je tam nekde begin transaction a konci to bud potvrzenim (commit) nebo zrusenim (rollback) pricemz se vzdy bud provede vse nebo nic. Tento jednoduchy commit funguje v ramci jednoho databazoveho serveru. Pokud ale mas transakci, ktera zahrnuje operace s daty na vice databazovych serverech (i ruznych dodavatelu), nelze tuto 'klasickou' transakci pouzit. Je nutno pouzit protokol pro dvoufazovy commit na ktery se ptas. Existuji dva nejrozsirenejsi systemy: MSDTC (MicroSoft Distributed Transaction Control) a XA protocol (od IBM) Funguji tak, ze pred commitem se v kazdem db serveru provede prikaz 'prepare', ktery overi, zda v danem db serveru probehne commit v poradku (ale zatim se data necommituji) a pokud tzv. transakcni koordinator (Tva aplikace nebo nejaky transakcni monitor skrz ktery se pripojujes k datum) obdrzi zpravu, ze prepare prikaz probehl v poradku, tak teprve potom vysle commit do vsech db serveru. V pripade rollbacku vysle trans. koordinator rollback do vsech db serveru. Vetsina db serveru musi mit pro podporu dvoufazoveho commitu nainstalovanu zvlastni 'systemovou' databazi (v Sybase je to xadb), pomoci ktere provadeji prepare prikaz. > anebo aspon odkaz na teorii rizeni dbs na webu, pokud mozno v cz? Tou 'teorii rizeni dbs' myslis co? Transakce? > - > Az mi bude tak sto deset, > prijde buh a zmackne reset. > k.p. Bye Medved Si vis pacem, para bellum.