|
|
Julkaistu 30.9.2021 14.42.47
|
|
|
|

Aikataulutettu tietokanta-varmuuskopiointi on jokaisen kehittäjän ehdoton kokeilema, ja säännöllinen varmuuskopiointidata voi ratkaista ongelman, jossa jokin tieto vahingossa poistuu, mutta ne voidaan palauttaa tiettyyn hetkeen asti ja minimoida häviöt.
MySQL tarjoaa kätevän työkalun tietokantatietojen ja tiedostojen vientiin komentoriviltä, mysqldump, joka voi viedä tietokantoja komentorivin kautta.
Arvostelu:
Tätä artikkelia käytetäänCentOS 7ympäristössä, joka varmuuskopioi etätietokantoja paikallisesti mySQLDUMPin kautta. Jos suoritamme mysqldump-komennon suoraan, virhe on seuraava:
-bash: mysqldump: komentoa ei löydy Tässä suositellaan avoimen lähdekoodin kolmannen osapuolen pakettia, Mydumperia, joka on suorituskykyinen monisäikeinen varmuuskopiointi- ja palautustyökalu MySQL:lle ja Drizzlelle. Nopeampi kuin mysqldumpin varmuuskopiointinopeus ja palautusnopeus.
GitHub-osoite:Hyperlinkin kirjautuminen on näkyvissä.
Asennuskomento on seuraava:
Näin ollen sekä mydumper- että myloader-komentoja voidaan jo käyttää, mydumper vastaa viennistä ja myloader tuonnista, kuten alla olevassa kuvassa näkyy:
mydumperParametrien selitys
-B, --tietokanta Varmuuskopioittava, jos sitä ei määriteltä, varmuuskopioi kaikki kirjastot -T, --taulukot-lista Taulukot, jotka täytyy varmuuskopioida, nimet on erotettu pilkuilla -o, --outputdir varmuuskopioidakseen hakemiston, josta tiedosto on tulostettu -s, --lause-koko Insert-lauseen tavujen määrä --statement-size on oletuksena 1000000 -r, --rivit Kun jaetaan taulukko riveihin, määritä lohkorivien määrä, ja tämän asetuksen määrittäminen kytkee --chunk-filesize pois päältä -F, --chunk-tiedostokoko Kun taulukon koon mukaan lohkotaan määritetty lohkokoko MB:nä -c, --pakkaa tulostiedosto -e, --build-empty-files, jos tauludata on tyhjä, tai se tuottaa tyhjän tiedoston (oletuksena ei dataa, vain taulukkorakennetiedosto) -x, --regex on sama kuin 'db.table' -vastaava säännöllinen lauseke -i, --ohitta-moottorit sivuuttavat tallennusmoottorit ja käyttävät paksua ositusta -m, --ei-skeemat eivät tue taulukkorakenteita -k, --no-lockit eivät käytä väliaikaisia jaettuja vain luku -lukkoja, ja tämän vaihtoehdon käyttö aiheuttaa datan epäjohdonmukaisuuksia --less-locking lyhentää aikaa, joka kuluu lukkojen soveltamiseen InnoDB-taulukoihin (tämän kuvion mekaniikka selitetään tarkemmin alla) -l, --long-query-guard Aseta pitkien varmuuskopioiden estävien kyselyjen aikakatkaisuaika sekunteina, ja oletus on 60 sekuntia (mydumper poistuu oletuksena aikakatkaisun jälkeen). --kill-long-queries kill long queries (ilman poistumista) -b, --binlogit vievät binlogit -D, --daemon enable daemon mode, joka varmuuskopioi tietokannan tietyin välein keskeytyksettä -I, --snapshot-interval dump Snapshot-väliaika, oletusarvo 60s, täytyy olla daemon-tilassa -L, --logfile käyttää lokitiedoston nimeä (mydumperin generoima loki) ja käyttää oletuksena standarditulosta --TZ-UTC eri aikavyöhykkeiden välillä on käytetty vaihtoehto, jota ei selitetä --skip-tz-utc id --use-savepoints Käytä tallennuspisteitä lyhentämään lukitusaikaa, joka johtuu metatietojen keruun aiheuttamasta ajasta, mikä vaatii SUPER-käyttöoikeuksia --success-on-1146 Ei lisäysvirhemäärää ja varoitus kriittisen sijaan, jos taulukkoa ei ole olemassa -h, --host Yhteyden isäntänimi -u, --käyttäjä varmuuskopioi käyttäjä -p, --salasanasalasana -P, --portti -S, --socket Socket-tiedosto socket-viestinnän yhteydessä -t, --threads Oletusmäärä varmuuskopiointisäikeitä on 4 -C, --compress-protocol pakkaa dataa, joka kommunikoi mysql:n kanssa -V, --versio näyttää versionumeron -v, --sanallinen ulostuloinformaatiokuvio, 0 = äänetön, 1 = virheet, 2 = varoitukset, 3 = tiedot, oletuksena 2 MyloaderParametrien selitys
-d, --kansiokansio varmuuskopiotiedostolle -q, --kyselyt per transaktio Suoritettujen kyselyjen määrä per asia on oletuksena 1000 -o, --overwrite-tables Jos palautettava taulu on olemassa, poista ensin taulu, käytä tätä parametria ja varmuuskopioi taulurakenne tarvittaessa -B, --tietokanta Tietokanta, joka täytyy palauttaa -e, --enable-binlog mahdollistaa binäärilokit datan palauttamisen -h, --isäntäjuontaja -u, --käyttäjä palautettu -p, --salasanasalasana -P, --portti -S, --socket socket file -t, --threads palauttaa käytettyjen säikeiden määrän, oletusarvo on 4 -C, --pakkausprotokolla -V, --versio näyttää version -v, --sanavalmis ulostulotila, 0 = hiljainen, 1 = virheet, 2 = varoitukset, 3 = tiedot, oletuksena 2 Testivarmistukset
Tietokannan vientikäsky on seuraava:
Suorituksen jälkeen mydumper luo määritellyn hakemistoosoitteen, jonka välitämme parametrien kautta, ja joka sisältää metatietotiedoston, joka tallentaa binäärilokitiedoston nimen varmuuskopiointihetkellä ja paikan, jossa loki on kirjoitettu. Jokaisessa taulukossa on kaksi varmuuskopiota, files:database.table-schema.sql taulukkorakennetiedosto ja database.table.sql taulutietotiedosto.
Aikataulutetut varasuunnitelmat
Viiteartikkelit ovat seuraavat:
Luodaan uusi shell-skripti nimeltä :backup_uat.sh, seuraavasti:
Suorituslupien myöntäminen:
Lisää tehtävä
Tehtävä suoritetaan joka päivä klo 00:10
Lataa konfiguraatio uudelleen
(Loppu)
|
Edellinen:Linux-ympäristön perusteet: ero EL6:n, EL7:n ja EL8:n asentamisessa RPM-paketteihinSeuraava:RAID-teknologian selitys – RAID0, RAID1, RAID3, RAID5, RAID6, RAID10 vertailu
|