Vylepšenie
Predpokladajme, že používate SQL Server 2017 v systéme Linux. V niektorých scenároch môže dôjsť k strate údajov na SQL Server v systémoch, ktoré používajú nestále vyrovnávacie pamäte. K strate dochádza v dôsledku nepredvídateľných okolností, ako je napríklad výpadok napájania pred zapísaním údajov vo vyrovnávacej pamäti na stabilné médium. Aby sa takýmto scenárom zabránilo, v kumulatívnej aktualizácii 6 (CU6) pre SQL Server 2017 v systéme Linux je zavedený mechanizmus núteného vyprázdnenia. Ak váš úložný subsystém nedokáže zaručiť trvalé zápisy naprieč stratou napájania, odporúčame použiť CU6 pre SQL Server 2017 v systéme Linux.
Táto aktualizácia umožňuje:
- Správanie vynúteného vyprázdnenia počas zapisovania do databázy, ako je napríklad kontrolný bod a zápis do denníka transakcií.
- Predvolene nastavenie konfigurácie writethrough=1 a alternatewritethrough=1 . Tieto predvolené nastavenia umožňujú serveru SQL Server zabezpečiť trvalé vyprázdnenie zápisov, aby sa zablokovali zariadenia. Alternatívny zápis je možnosť na optimalizáciu trvanlivosti vyprázdnenia požiadaviek na systém súborov. Ďalšie informácie o týchto dvoch nastaveniach nájdete v nasledujúcej tabuľke:
| Názov | Predvolené | Popis |
|---|---|---|
| zapisovanie cez vrstvu | 1 | Platné hodnoty sú 0 a 1. 1 = preloží FILE_FLAG_WRITE_THROUGH žiadostí do O_DSYNC otvorení. 0 = zabraňuje prekladu FILE_FLAG_WRITE_THROUGH požiadaviek na O_DSYNC otvorí. |
| alternatívny zápis | 1 | Platné hodnoty sú 0 a 1. 1 = Umožňuje optimalizované vyprázdnenie pomocou rozšírenia hostiteľa pre FILE_FLAG_WRITE_THROUGH požiadavky. Write(s) on files optimize(s) calls(s) to fdatasync for the block device. 0 = vypne optimalizáciu alternatívneho vyprázdnenia. Súbor sa otvorí pomocou O_DSYNC a príslušný systém súborov vykoná potrebné požiadavky na zápis a vyprázdnenie. Poznámka Nastavenie alternatívneho prepisu sa použije len vtedy, keď writethrough =1. |
Ďalšie informácie
Ďalšie informácie nájdete v téme Najvhodnejšie postupy výkonu a pokyny na konfiguráciu pre SQL Server 2017 v systéme Linux týkajúce sa zvládnutia vysokofrekvenčného zápisu a odporúčaní pre umiestnenie súborov databázy.
SQL Server inštalácie spustené v systémoch ukladacieho priestoru, ktoré zaručujú O_DIRECT bezpečný zápis, môžete povoliť príznak sledovania (TF) 3979 na zakázanie správania vynúteného vyprázdnenia a nastaviť alternatívne možnosti prepisovania a zápisu v mssql.conf na hodnotu NULA. Tým sa SQL Server 2017 vráti na správanie pred CU6.
Poznámka Systém ukladacieho priestoru dokáže zabezpečiť, aby sa všetky zápisy vo vyrovnávacej pamäti alebo čiastočné zápisy považovali za bezpečné a trvalé, a to tak, že zaručí, že zápisy vydané do zariadenia sa budú uchovávať na médiu, ktoré bude pretrvávať aj pri zlyhaní systému, resetovaní rozhraní a výpadkoch napájania, a samotné médium je hardvérovo redundantné.
Tu sú ďalšie podrobnosti o správaní SQL Server pre vstup a výstup súborov s týmito zmenami:
- Databázové súbory (.mdf) a súbory denníka transakcií (.ldf) nepoužívajú v CU6 predvolene funkcie prepisovania a alternatívneho zápisu, pretože používajú vynútené vyprázdnenie . TF 3979 zakáže používanie správania vynúteného vyprázdnenia pre databázy a súbory denníka transakcií a použije logiku zapisovania a alternatívneho zápisu.
- Ostatné súbory, ktoré sa otvárajú pomocou FILE_FLAG_WRITE_THROUGH v SQL Server, ako sú napríklad snímky databázy, interné snímky na kontrolu konzistencie databázy (CHECKDB), súbory sledovania profilera a rozšírené súbory sledovania udalosti, budú používať optimalizácie prepisovania a alternatívneho zápisu.
Riešenie
Táto aktualizácia je súčasťou nasledujúcej kumulatívnej aktualizácie pre SQL Server:
Kumulatívna aktualizácia 6 pre SQL Server 2017
Informácie o kumulatívnych aktualizáciách pre SQL Server:
Každá nová kumulatívna aktualizácia pre SQL Server obsahuje všetky rýchle opravy a opravy zabezpečenia, ktoré boli zahrnuté v predchádzajúcej kumulatívnej aktualizácii. Pozrite si najnovšie kumulatívne aktualizácie pre SQL Server:
Najnovšia kumulatívna aktualizácia pre SQL Server 2017
Odkazy
Získajte informácie o terminológii, ktorú Microsoft používa na popis aktualizácií softvéru.