|
|
Postat pe 30.09.2021 14:42:47
|
|
|
|

Backup-ul programat al bazei de date este obligatoriu pentru orice dezvoltator, iar datele de backup regulate pot rezolva problema ștergerii accidentale a unor date, care pot fi restaurate la un anumit moment și pot minimiza pierderile.
MySQL oferă un instrument convenabil pentru exportul datelor și fișierelor din baza de date de pe linia de comandă, mysqldump, care poate exporta baze de date prin linia de comandă.
Recenzie:
Acest articol este folositCentOS 7Mediu, backup al bazelor de date la distanță către local prin mysqldump. Dacă rulăm comanda mysqldump direct, eroarea va fi următoarea:
-bash: mysqldump: comandă negăsită Aici este recomandat un pachet open-source third-party, Mydumper, un instrument de backup și recuperare multi-thread de înaltă performanță pentru MySQL și Drizzle. Viteză mai rapidă decât backup-ul și viteza de recuperare din mysqldump.
Adresă GitHub:Autentificarea cu hyperlink este vizibilă.
Comanda de instalare este următoarea:
Astfel, atât comenzile mydumper, cât și myloader pot fi deja folosite, mydumper este responsabil pentru export, iar myloader este responsabil pentru import, așa cum se arată în figura de mai jos:
mydumperExplicația parametrilor
-B, --bază de date Baza de date care trebuie făcută backup, dacă nu specificată, să facă backup la toate bibliotecile -T, --tabele-listă Tabelele care trebuie susținute, numele sunt separate prin virgule -o, --outputdir pentru a face backup la directorul unde este ieșit fișierul -s, --dimensiunea-instrucțiuni Numărul de octeți ai instrucțiunii inserate generate de ---dimensiunea-instrucțiunii este implicit 1000000 -r, --rânduri Când împărțiți un tabel în rânduri, specificați numărul de rânduri de bloc, specificarea acestei opțiuni va dezactiva --chunk-filesize -F, --dimensiunea fișierului chunk Când împărțim un tabel după dimensiune, dimensiunea blocului specificată în MB -c, --comprimă comprimă comprimă fișierul de ieșire -e, --build-vidty-files dacă datele tabelului sunt goale, sau produce un fișier gol (implicit fără date, doar fișierul structurii tabelului) -x, --regex este același cu expresia regulată care corespunde cu "db.table" -Eu, --ignor motoarele ignoră motoarele de stocare și folosesc partiționare groasă -m, --no-scheme nu susțin structuri de tabel -k, --fără blocaje nu folosesc blocaje temporare partajate doar pentru citire, iar folosirea acestei opțiuni va cauza inconsistențe de date --mai puțin-blocare reduce timpul necesar pentru aplicarea blocajelor pe tabelele InnoDB (mecanica acestui tipar este explicată în detaliu mai jos) -l, --long-query-guard Setează timpul de timeout pentru interogările lungi care blochează backup-uri în secunde, iar implicitul este 60 de secunde (mydumper va ieși implicit după timeout). --ucide-interogările lungi ucide interogările lungi (fără a ieși) -b, --binlogs exportă binloguri -D, --activează modul daemon, care face backup la baza de date la anumite intervale fără întrerupere -I, --snapshot-interval dump Timp de snapshot interval, implicit 60s, trebuie să fie în modul daemon -L, --logfile folosește numele fișierului log (logul generat de mydumper) și folosește implicit ieșirea standard --tz-utc între fusuri orare este o opțiune folosită, nu este explicată --skip-tz-utc Id --use-savepoints Folosește punctele de salvare pentru a reduce timpul de blocare cauzat de colectarea metadatelor, ceea ce necesită permisiuni SUPER --success-on-1146 Nu incrementează numărul de erori și Avertisment în loc de Critic în caz că tabelul nu există -h, --host Numele gazdei conexiunii -u, --utilizator backup utilizatorul folosit -p, --parolă -P, --port port -S, --socket Fișierul soclului când se folosește comunicarea prin soclu -t, --threads Numărul implicit de fire de rezervă activate este 4 -C, --compress-protocol comprimă datele care comunică cu mysql -V, --versiunea afișează numărul versiunii -v, ---model detaliat de informații de ieșire, 0 = silențios, 1 = erori, 2 = avertismente, 3 = informații, implicit 2 myloaderExplicația parametrilor
-d, --folder de director pentru fișierul de backup -q, --interogări-per-tranzacție Numărul de interogări executate pe lucru este 1000 implicit -o, --overwrite-tables Dacă tabelul de restaurat există, elimină tabelul mai întâi, folosește acest parametru și face backup la structura tabelului când este nevoie să faci backup -B, --baza de date Baza de date care trebuie restaurată -e, --enable-binlog permite jurnalele binare să restaureze date -h, --gazdă -u, --utilizator restaurat -p, --parolă -P, --port port -S, --fișier soclu -t, --threads restaurează numărul de fire folosite, implicit este 4 -C, --comprim-protocol -V, --versiunea afișează versiunea -v, --modul de ieșire verbos, 0 = silențios, 1 = erori, 2 = avertismente, 3 = informații, implicit 2 Backup-uri de testare
Comanda de export a bazei de date este următoarea:
După execuție, mydumper va crea o adresă de director specificată prin care trecem parametrii, care conține un fișier de metadate ce înregistrează numele fișierului de jurnal binar la momentul backup-ului și locația unde a fost scris jurnalul. Fiecare tabel are două fișiere de rezervă files:database.table-schema.sql un fișier de structură de tabel și database.table.sql fișier de date de tabel.
Backup-uri programate
Articolele de referință sunt următoarele:
Să creăm un nou script de shell numit :backup_uat.sh, după cum urmează:
Acordarea permisiunilor de execuție:
Adaugă o sarcină
Sarcina se desfășoară în fiecare zi la ora 00:10 dimineața
Reîncarcă configurația
(Sfârșit)
|
Precedent:Elementele de bază ale mediului Linux: diferența dintre instalarea el6, el7 și el8 în pachete rpmUrmător:Explicații despre tehnologia RAID - Comparație RAID0, RAID1, RAID3, RAID5, RAID6, RAID10
|