![]() |
![]() ![]() |
![]() |
![]()
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? ![]() |
|
|
![]()
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). |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 03:16 |