SQL scenarijaus išklotinės konvertavimas į duomenų bazės atsarginę kopiją
Konvertuojant nesuglaudintą paprasto teksto SQL scenarijų į optimizuotą gimtąją duomenų bazės atsarginės kopijos bylą, sumažėja saugyklos dydis ir pagreitėja serverio atkūrimo laikas.
Formatų palyginimas ir techninės specifikacijos
| Specifikacija | SQL | BAK |
|---|---|---|
| MIME tipas | text/plain | application/octet-stream |
| Tipas | relational schema & query script | database backup archive |
| Glaudinimas | none (plain text DDL/DML script) | MS SQL native backup compression |
| Standartinė specifikacija | ISO/IEC 9075 SQL Standard | Microsoft SQL Server Backup Architecture |
| Maginės baitų antraštės (Magic Bytes) | 2D 2D (--) or CREATE TABLE SQL statement | Microsoft SQL Server Backup / Generic Database dump headers |
Formato apžvalga ir taikymas
Duomenų bazių administratoriai dažnai susiduria su SQL scenarijaus išklotinėmis perkeldami duomenis tarp skirtingų duomenų bazių prekių ženklų arba rankiniu būdu tikrindami lentelių schemas. Šiuose teksto scenarijuose yra SQL komandos, tokiamos kaip CREATE TABLE ir INSERT INTO, parašytos paprastomis, žmonėms įskaitotomis raidėmis. Nors šį teksto formatą lengva skaityti, jis užima daug vietos standžiajame diske ir duomenų bazės varikliui užtrunka ilgai, kol jis įvykdomas eilutė po eilutės. Paprasto teksto scenarijaus pavertimas gimtąja duomenų bazės atsarginės kopijos byla išsprendžia šias greičio ir saugyklos problemas. Įmonių serveriai nuskaito dvejetainį atsarginės kopijos archyvą tiesiai į atmintį, neanalizuodami milijonų atskirų teksto komandų. Šį migracijos kelią naudoja sistemos administratoriai, ruošiantys gamybines aplinkas, valdantys didelio masto serverių migraciją ir nustatantys automatizuotus naktinės priežiūros planus.
Techninės specifikacijos ir kodekų apžvalga
SQL scenarijaus išklotinė naudoja MIME tipą text/plain ir susideda tik iš ASCII arba UTF-8 koduotų teksto simbolių be jokių dvejetainių magiškųjų baitų ar glaudinimo. Tuo tarpu duomenų bazės atsarginės kopijos byla naudoja MIME tipą application/octet-stream ir yra patentuotas dvejetainis konteinerio formatas, sukurtas tokių duomenų bazių variklių kaip „Microsoft SQL Server". BAK bylos struktūra grupuoja duomenis į fiksuoto dydžio 8 KB duomenų puslapius ir dažnai taiko MS SQL gimtąjį atsarginės kopijos glaudinimą, naudojant algoritmus, tokius kaip MS-Xpress arba LZO. Šis dvejetainis pakavimas išsaugo tikslų indeksavimą, operacijų žurnalo struktūras ir metaduomenis, kartu praleisdamas didelę procesoriaus apkrovą, reikalingą teksto scenarijaus elementams analizuoti.
OS ir naršyklės suderinamumas
SQL scenarijaus išklotinės atsiverčia bet kurioje teksto rengyklėje arba duomenų bazės kliente „Windows", „macOS", „Linux", „Android" ir „iOS" sistemose bei veikia bet kurioje interneto naršyklėje per kūrėjo įrankius. Duomenų bazės atsarginės kopijos byloms reikalinga konkreti duomenų bazių valdymo programinė įranga, pavyzdžiui, „Microsoft SQL Server Management Studio" sistemoje „Windows" arba įmonių duomenų bazių įrankiai, veikiantys „Linux" serverio platinimuose. Interneto naršyklės negali savarankiškai nuskaityti ar apdoroti dvejetainių BAK archyvų.
💡 Naudinga informacija
Prieš paleisdami importavimą, visada patikrinkite savo šaltinio teksto scenarijaus simbolių koduotę, kad išvengtumėte sugadintų specialiųjų simbolių galutiniame duomenų bazės atsarginės kopijos archyve.
Formatų palyginimas ir techninės specifikacijos
Didelė 1 GB SQL teksto išklotinė atsisiunčiama per maždaug 173 sekundes per 4G mobilųjį tinklą 50 Mbps greičiu, tačiau sumažėja iki maždaug 250 MB kaip suglaudinta BAK byla, kuriai atsisiųsti reikia tik 43 sekundžių. Naudojant spartų 500 Mbps šviesolaidinį ryšį, suglaudinta 250 MB atsarginės kopijos byla perkeliama greičiau nei per 4 sekundes.
Dažnai užduodami klausimai
Kaip konvertuoti SQL scenarijaus išklotinę į duomenų bazės atsarginę kopiją neprarandant kokybės?
Šis konvertavimas yra visiškai be nuostolių, nes abiejuose formatuose saugomos lygiai tos pačios relycinių duomenų lentelės, raktai ir apribojimai. Teksto scenarijus tiesiog išrašo kiekvieną komandą žmogiam įskaitomu tekstu, o BAK byla supakuoja lygiai tas pačias instrukcijas ir duomenų puslapius į organizuotą dvejetainį archyvą, naudodama glaudinimą be nuostolių.
Kuo skiriasi SQL scenarijaus išklotinė ir duomenų bazės atsarginė kopija?
SQL scenarijaus išklotinė yra nesuglaudinta paprasto teksto byla, kurioje yra nuoseklių SQL užklausų, kurias reikia išanalizuoti ir įvykdyti po vieną. Duomenų bazės atsarginė kopija yra patentuotas dvejetainis archyvas, optimizuotas duomenų bazės varikliui, turintis neapdorotus duomenų puslapius, integruotą glaudinimą ir greito atkūrimo indeksus.