|
|
Objavljeno na 30. 09. 2021 14:42:47
|
|
|
|

Načrtovano varnostno kopiranje baze podatkov je nujen poskus za vsakega razvijalca, redno varnostno kopiranje podatkov pa lahko reši problem nenamernega brisanja nekaterih podatkov, ki jih je mogoče obnoviti na določen trenutek in zmanjšati izgube.
MySQL ponuja priročno orodje za izvoz podatkovnih podatkov in datotek iz ukazne vrstice mysqldump, ki lahko izvozi baze podatkov prek ukazne vrstice.
Pregled:
Ta članek se uporabljaCentOS 7okolje, ki varnostno kopira oddaljene baze podatkov v lokalno preko mysqldump. Če zaženemo ukaz mysqldump neposredno, bo napaka naslednja:
-bash: mysqldump: ukaz ni najden Tukaj je priporočljiv odprtokodni paket tretje osebe, Mydumper, zmogljivo večnitno varnostno kopiranje in obnovitveno orodje za MySQL in Drizzle. Hitreje kot hitrost varnostnega kopiranja mysqldump in okrevanje.
GitHub naslov:Prijava do hiperpovezave je vidna.
Ukaz za namestitev je naslednji:
Na ta način je mogoče že uporabljati tako ukaza mydumper kot myloader, mydumper je odgovoren za izvoz, myloader pa za uvoz, kot je prikazano na spodnji sliki:
mydumperRazlaga parametrov
-B, --podatkovna baza Podatkovna baza, ki jo je treba varnostno kopirati, če ni določena, varnostno kopira vse knjižnice -T, --tabele-seznam Tabele, ki jih je treba varnostno kopirati, so ločena z vejicami -o, --outputdir za varnostno kopiranje mape, iz katere je datoteka izpisana -s, --velikost ukaza Število bajtov stavka insert, generiranega z --velikost stavka, je privzeto 10000000 -r, --vrstice Ko tabelo delimo na vrstice, določite število vrstic blokov, z navedbo te možnosti se izklopi --velikost datoteke -F, --velikost datoteke (chunk-filesize) Ko tabelo delimo po velikosti, je določena velikost bloka v MB -c, --stisni stisni izhodno datoteko -e, --gradi-prazne-datoteke, če so podatki tabele prazni ali če ustvari prazno datoteko (privzeto ni podatkov, le datoteka strukture tabele) -x, --regex je enak regularnemu izrazu, ki ustreza 'db.table' -i, --ignore-engine ignorirajo pogone za shranjevanje in uporabljajo debelo razdeljevanje -m, --no-sheme ne podpirajo struktur tabel -k, --no-locks ne uporabljajo začasnih deljenih zaklepov samo za branje, uporaba te možnosti pa bo povzročila neskladja podatkov --less-locking skrajša čas, potreben za uporabo zaklepov na tabelah InnoDB (mehanika tega vzorca je podrobneje pojasnjena spodaj) -l, --long-query-guard Nastavi čas časovne omejitve za dolge poizvedbe, ki blokirajo varnostne kopije, v sekundah, privzeto pa je 60 sekund (mydumper bo privzeto zapustil po časovnem izteku). --uniči-dolge-poizvedbe ubijejo dolge poizvedbe (brez izhoda) -b, --binlogi izvoz binlogov -D, --daemon omogoči daemon način, ki varnostno kopira bazo podatkov v določenih intervalih brez prekinitve -Jaz, --snapshot-interval dump Snapshot interval time, privzeto 60s, mora biti v daemon načinu -L, --dnevnik uporablja ime dnevnika (dnevnik, ki ga generira mydumper) in privzeto uporablja standardni izhod --tz-utc čez časovne pasove je možnost, ki se uporablja, ni pojasnjena --skip-tz-utc Id --use-savepoints Uporabi savepointe za zmanjšanje časa zaklepanja, ki ga povzroča zbiranje metapodatkov, kar zahteva SUPER dovoljenja --success-on-1146 Ne poveča število napak in Opozorilo namesto Kritično, če tabela ne obstaja -h, --host Gostiteljsko ime povezave -u, --uporabnik varnostna kopija uporabnika uporabljenega -p, --geslo geslo -P, --port port -S, --socket Datoteka socket pri uporabi socket komunikacije -t, --niti Privzeto število omogočenih varnostnih niti je 4 -C, --compress-protocol stisne podatke, ki komunicirajo z mysql -V, --različica prikazuje številko različice -v, --verbozen vzorec izhodnih informacij, 0 = tiho, 1 = napake, 2 = opozorila, 3 = informacije, privzeto 2 myloaderRazlaga parametrov
-d, --mapa za varnostno kopijo -q, --poizvedbe-na-transakcijo Število izvedenih poizvedb na stvar je privzeto 1000 -o, --overwrite-tables Če tabela, ki jo želimo obnoviti, obstaja najprej, uporabi ta parameter in naredi varnostno kopijo strukture tabele, ko je treba varnostno kopirati -B, --podatkovna baza Podatkovna baza, ki jo je treba obnoviti -e, --enable-binlog omogoča binarnim dnevnikom obnovo podatkov -H, --gostitelj -u, --uporabnik obnovljen -p, --geslo geslo -P, --port port -S, --datoteka socket socket -t, --niti obnovijo število uporabljenih niti, privzeto je 4 -C, --kompresijski protokol -V, --različica prikazuje različico -v, --Besedni izhodni način, 0 = tiho, 1 = napake, 2 = opozorila, 3 = informacije, privzeto 2 Testne varnostne kopije
Ukaz za izvoz baze podatkov je naslednji:
Po izvedbi mydumper ustvari določen naslov mape, ki ga posredujemo skozi parametre, in vsebuje metapodatkovno datoteko, ki beleži ime binarne datoteke dnevnika ob varnostnem kopiranju in lokacijo, kjer je bil dnevnik zapisan. Vsaka tabela ima dve varnostni kopiji files:database.table-schema.sql datoteko strukture tabele in database.table.sql podatkovno datoteko tabele.
Načrtovane varnostne kopije
Referenčni članki so naslednji:
Ustvarimo nov shell skript z imenom :backup_uat.sh, kot sledi:
Podelite dovoljenja za izvajanje:
Dodaj nalogo
Naloga se opravi vsak dan ob 00:10
Ponovno naloži konfiguracijo
(Konec)
|
Prejšnji:Osnove Linux okolja: razlika med nameščanjem el6, el7 in el8 v rpm paketihNaslednji:Razlaga RAID tehnologije - primerjava RAID0, RAID1, RAID3, RAID5, RAID6, RAID10
|