|
|
Pubblicato su 30/09/2021 14:42:47
|
|
|
|

Il backup programmato del database è imprescindibile per ogni sviluppatore, e i dati di backup regolari possono risolvere il problema di cancellare accidentalmente alcuni dati, che possono essere ripristinati a un certo momento e minimizzare le perdite.
MySQL fornisce uno strumento comodo per esportare dati e file del database dalla riga di comando, mysqldump, che può esportare database tramite la riga di comando.
Recensione:
Questo articolo è utilizzatoCentOS 7Ambiente, facendo il backup dei database remoti sul locale tramite mysqldump. Se eseguiamo direttamente il comando mysqldump, l'errore sarà il seguente:
-bash: mysqldump: comando non trovato Qui è consigliato un pacchetto open-source di terze parti, Mydumper, uno strumento di backup e recupero multithread ad alte prestazioni per MySQL e Drizzle. Velocità di backup e di recupero di mysqldump più veloce.
Indirizzo GitHub:Il login del link ipertestuale è visibile.
Il comando di installazione è il seguente:
In questo modo, sia i comandi mydumper che myloader possono già essere utilizzati: mydumper è responsabile dell'esportazione e myloader è responsabile dell'importazione, come mostrato nella figura sottostante:
MydumperSpiegazione dei parametri
-B, --database Il database da fare backup, se non specificato, di fare il backup di tutte le librerie -T, --tabelle-lista Le tabelle che devono essere sottoposte in backup, i nomi sono separati da virgole -o, --outputdir per fare il backup della directory dove viene prodotto il file -s, --dimensione-istruzione Il numero di byte dell'istruzione inserita generata da --dimensione-istruzione è 1000000 di default -r, --righe Quando si divide una tabella in righe, specifica il numero di righe di blocco; specificare questa opzione disattiverà --chunk-filesize -F, --dimensione-file-chunk. Quando si divide una tabella per dimensione, la dimensione specificata del blocco in MB -c, --comprimi comprimi comprimi il file di output -e, --build-vidty-files se i dati della tabella sono vuoti, oppure produce un file vuoto (di default nessun dato, solo il file della struttura della tabella) -x, --regex è lo stesso dell'espressione regolare corrispondente a 'db.table' -I, --ignoro-motori ignora i motori di storage e usa una partizione spessa -m, --nessuno schema non supporta le strutture delle tabelle -k, --i no-lock non usano blocchi temporanei condivisi di sola lettura, e l'uso di questa opzione causerà incongruenze nei dati --meno bloccaggio riduce il tempo necessario per applicare i blocchi alle tabelle InnoDB (la meccanica di questo schema è spiegata in dettaglio di seguito) -l, --long-query-guard Imposta il tempo di timeout per le query lunghe che bloccano i backup, in secondi, e il valore predefinito è 60 secondi (mydumper uscirà di default dopo il timeout). --uccide-lunghe-interrogazioni uccide le lunghe query (senza uscire) -b, --binlogs esporta binlog -D, --modalità daemon attiva, che fa il backup del database a certi intervalli senza interruzioni -I, ---snapshot-interval dump Tempo di intervallo snapshot, predefinito 60s, deve essere in modalità demone -L, --logfile usa il nome del log file (il log generato da mydumper) e usa l'output standard di default --tz-utc tra fusi orari è un'opzione utilizzata, non spiegata --skip-tz-utc Id --use-savepoints Usa i punti di salvataggio per ridurre il tempo di blocco causato dalla raccolta dei metadati, che richiede permessi SUPER --success-on-1146 Non incrementare il conteggio degli errori e Avviso invece di Critico nel caso in cui la tabella non esista -h, --host Il nome host della connessione -u, --utente backup l'utente usato -p, --password -P, --porta di porta -S, --socket Il file socket quando si usa la comunicazione a socket -t, --threads Il numero predefinito di thread di backup abilitati è 4 -C, --compress-protocol comprime i dati che comunicano con mysql -V, --versione mostra il numero di versione -v, ---schema informativo di output verboso, 0 = silenzioso, 1 = errori, 2 = avvisi, 3 = info, impostazione predefinita a 2 MyloaderSpiegazione dei parametri
-d, --cartella della cartella per il file di backup -q, --interrogate-per-transazione Il numero di query eseguite per cosa è 1000 di default -o, --sovrascrittura-tabelle Se la tabella da ripristinare esiste, elimina prima la tabella, usa questo parametro e fai un backup della struttura della tabella quando serve -B, --database Il database che deve essere ripristinato -e, --enable-binlog consente ai log binari di ripristinare dati -h, --host -u, --utente restaurato -p, --password -P, --porta di porta -S, --file socket -t, --threads ripristina il numero di thread usati, il predefinito è 4 -C, --compress-protocol -V, --versione mostra la versione -v, --modalità di output verbosa, 0 = silenzioso, 1 = errori, 2 = avvisi, 3 = info, impostazione predefinita a 2 Backup di prova
Il comando di esportazione del database è il seguente:
Dopo l'esecuzione, mydumper crea un indirizzo di directory specificato che passiamo attraverso i parametri, che contiene un file di metadati che registra il nome binario del file di log al momento del backup e la posizione in cui il log è stato scritto. Ogni tabella ha due backup files:database.table-schema.sql un file di struttura della tabella e database.table.sql file di dati della tabella.
Backup programmati
Gli articoli di riferimento sono i seguenti:
Creiamo un nuovo script di shell chiamato :backup_uat.sh, come segue:
Concedere permessi di esecuzione:
Aggiungi un compito
Il compito viene svolto ogni giorno alle 00:10
Ricarica la configurazione
(Fine)
|
Precedente:Nozioni di base sull'ambiente Linux: la differenza tra installare el6, el7 ed el8 nei pacchetti rpmProssimo:Spiegazione della tecnologia RAID - Confronto tra RAID0, RAID1, RAID3, RAID5, RAID6, RAID10
|