Täiustus
Oletame, et kasutate Linux SQL Server 2017. Teatud juhtudel võib SQL Server põhjustada muutlikku vahemälu kasutavates süsteemides andmekadu. Kaotsiminek ilmneb ettenägematute asjaolude (nt energiatõrke) tõttu, enne kui vahemällu salvestatud andmed kirjutatakse stabiilsele andmekandjale. Selliste stsenaariumide vältimiseks võetakse Linux koondvärskenduses 6 (CU6) kasutusele SQL Server 2017 sundlõige. Kui teie salvestussüsteemi allsüsteem ei taga vastupidavaid kirjakirju kogu toitekao korral, soovitame rakendada SQL Server 2017 cu6 Linux.
See värskendus lubab järgmist.
- Andmebaasi kirjutamise ajal (nt kontrollpunkti ja tehingulogi kirjutamisel) ilmnenud sundtõrkekäitumine .
- Konfiguratsioonisätte läbikirjutus=1 ja alternatiivse kirjutamise läbikriipsutamise=1 suvandid vaikimisi. Need vaikesätted võimaldavad SQL Server veenduda, et kirjutised on seadmete blokeerimiseks püsivalt tühjendatud. Alternatiivne läbikirjutus on võimalus optimeerida failisüsteemi vastupidavuse puhastamise taotlusi. Nende kahe sätte kohta leiate lisateavet järgmisest tabelist.
| Name (Nimi) | Default | Kirjeldus |
|---|---|---|
| läbikirjutus | 1 | Sobivad väärtused on 0 ja 1. 1 = tõlgib FILE_FLAG_WRITE_THROUGH taotlused O_DSYNC avaneb. 0 = takistab FILE_FLAG_WRITE_THROUGH O_DSYNC taotluste tõlkimist. |
| alternatiivnekirjutus | 1 | Sobivad väärtused on 0 ja 1. 1 = lubab FILE_FLAG_WRITE_THROUGH taotluste jaoks hostilaienduse optimeeritud tühjendamise. Plokkseadme fdatasynci jaoks failide optimeerimise kõnedele kirjutamine(id). 0 = keelab alternatiivse loputuse optimeerimise. Fail avatakse O_DSYNC abil ja aluseks olev failisüsteem teostab vajalikud kirjutamis- ja tühjendamistaotlused. Märkus Alternatiivse kirjutamise säte rakendatakse ainult juhul, kui läbikirjutus=1. |
Veel teavet
Lisateavet leiate artiklist SQL Server 2017 jõudluse head tavad ja konfigureerimisjuhised, mis käsitlevad Linux kõrgsageduslike kirjutuskoormuste töötlemiseks ja andmebaasifailide paigutamise soovitusi.
SQL Server installid, mis töötavad salvestussüsteemides, mis tagavad kirjutamise O_DIRECT turvalised, saab lubada jälituslipu (TF) 3979, et keelata sunnitud loputuskäitumine ja seada alternatiivsete kirjutamise jaläbikirjutamise suvandite mssql.conf väärtuseks NULL. See tagastab SQL Server 2017 CU6-eelse käitumise jaoks.
Märkus Salvestussüsteem saab tagada, et vahemällu salvestatud või etapiti kirjutatud kirjutisi peetakse turvaliseks ja vastupidavaks, tagades, et seadmele väljastatud kirjutisi hoitakse andmekandjal, mis säilib süsteemi krahhide, liidese lähtestamiste ja energiatõrgete korral, ning andmekandja ise on riistvara liidab.
Siit leiate lisateavet nende muudatustega faili I/O SQL Server käitumise kohta.
- Andmebaasifailid (.mdf) ja tehingulogi (.ldf) ei kasuta CU6-s vaikimisi läbikirjutust ja alternatiivset kirjutamist, kuna need kasutavad sundlõiget . TF 3979 keelab andmebaasi- ja tehingulogifailide sundlöömise käitumise kasutamise ning kasutab läbikirjutamise ja alternatiivse kirjutamise loogikat.
- Muud failid, mis avatakse SQL Server FILE_FLAG_WRITE_THROUGH abil (nt andmebaasi hetktõmmised, andmebaasi ühtsuse kontrolli sisemised hetktõmmised (CHECKDB), profileerija jälitusfailid ja laiendatud sündmusejälitusfailid) kasutavad läbikirjutamise ja alternatiivsete ülekirjutamise optimeerimiste funktsiooni.
Lahendus
See värskendus on kaasatud järgmisesse SQL Server koondvärskendusse:
SQL Server 2017 koondvärskendus 6
Teave SQL Server koondvärskenduste kohta.
Iga uus koondvärskendus SQL Server sisaldab kõiki kiirparandusi ja kõiki turbeparandusi, mis olid kaasatud eelmise koondvärskenduse. Vaadake uusimaid SQL Server koondvärskendusi.
Uusim koondvärskendus SQL Server 2017 jaoks
Viited
Lisateave Microsofti tarkvaravärskenduste terminoloogia kohta.