Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Start transaction przy zmianie wielu pól w bazie
movax13h
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 18.11.2009

Ostrzeżenie: (0%)
-----


Piszę system w php, który od czasu do czasu będzie zmieniał klucz, którym szyfrowane są dane w tabelach.

W momencie zmiany klucza system powinien odczytać wszystkie dane i spowrotem je zaszyfrować.

To już działa ale bez żadnego zabezpieczenia, na wypadek awarii serwera. Zastanawiam się czy zamiast pisać obliczanie sumy kontrolnej przed i po można skorzystać z transakcji. Nigdy wcześniej z nich nie korzystałem.

Procedury do przeszyfrowania bazy działają na kilku kwerendach -danych może być kilka tysięcy rekordów

Mam pytanie: czy można za pomocą kilku kwerend korzystać z transakcji? (nie pisać wszystkiego za jednym razem)
Czy mySql to zapamięta i na wypadek awarii przywróci dane?

i wogóle jak to mniej więcej napisać w sql? smile.gif
Go to the top of the page
+Quote Post
Mchl
post
Post #2





Grupa: Zarejestrowani
Postów: 855
Pomógł: 145
Dołączył: 17.07.2008
Skąd: High Memory Area

Ostrzeżenie: (0%)
-----


Można bo do tego transakcje służą.
Albo wykonają się wszystkie zapytania, albo serwer jest cofany do stanu przed transakcją.

Warunkiem jest użycie silnika InnoDB, oraz unikanie niektórych zapytań, któe powodują automatyczne zakończenie transakcji (w zasadzie chodzi o DDL).
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 03:16