Sveiki,
norėjau pasidalinti savo nuomone apie innodb_flush_log_at_trx_commit parametrą
Taigi mano pasiūlymai būtų tokie:
innodb_flush_log_at_trx_commit = 0 jei tai yra paprastas namų kompiuteris, kur nėra labai svarbios informacijos, informacija kinta retai arba yra daugybė kitų priežasčių (neptvarūs įrenginiai) dėl ko gali būti prarasta informacija.
innodb_flush_log_at_trx_commit = 2 jei tai yra blog/forum/e-komercijos/statistikos ir panašūs puslapiai ar laikoma informacija.
innodb_flush_log_at_trx_commit = 1 naudoti tik tuo atveju, kai vyksta dažna informacijos kaita ir tikimybė, kad užlūžus kompiuteriui bus prarasta informacija arba jei reikia ytin didelio saugumo (pavyzdžiui pinigų transakcijos). Šio varianto nesiūlau naudoti, jei visą IT infrastruktūra apsiriboja vienu fiziniu ar virtualiu serveriu, tai yra - jam sugedus vistiek didelė tikimybė, kad informacija bus prarasta.
ACID standartas visgi reikalauja, kad būtų pasirinktas būtent šis variantas.
Aš asmeniškai naudoju 2 variantą visuose serveriuose, nes įrašymo greitis į duomenų bazę yra apie net iki 75x didesnis ir duomenys prarandami tik fizinės įrangos gedimo metu (užlūžus operacinei sistemai neprarandami duomenys)
Bet kuriuo atveju jums reiktų nuspresti ar jums labiau reikia greičio ar tos informacijos, kuri gali būti prarasta per tą sekundę.