Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 27725|Risposta: 4

[Fonte] Effettuo regolarmente backup di database MySQL remoti in ambienti Linux

[Copiato link]
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:

Riepiloghi dei database di importazioni ed esportazioni di MySQLdump
https://www.itsvse.com/thread-4353-1-1.html

Usa MySQL per programmare automaticamente i backup in un ambiente Windows
https://www.itsvse.com/thread-7412-1-1.html

[Ristampa] Backup regolare degli script per siti web e database sotto Linux
https://www.itsvse.com/thread-4428-1-1.html

Backup ed esportazione del database MySQL
https://www.itsvse.com/thread-4004-1-1.html
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:

Nozioni di base sull'ambiente Linux: la differenza tra installare el6, el7 ed el8 nei pacchetti rpm
https://www.itsvse.com/thread-10098-1-1.html
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:

CentOS 7 utilizza crontab per eseguire compiti a intervalli regolari
https://www.itsvse.com/thread-9280-1-1.html
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 rpm
Prossimo:Spiegazione della tecnologia RAID - Confronto tra RAID0, RAID1, RAID3, RAID5, RAID6, RAID10
 Padrone di casa| Pubblicato su 30/09/2021 17:03:15 |
Prova a ripristinare il database dal file di backup

-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


Questo comando,Le tabelle e i dati appena creati non vengono eliminati

Pubblicato su 02/10/2021 16:58:15 |
Studia sodo e migliora ogni giorno
 Padrone di casa| Pubblicato su 19/10/2022 21:07:56 |
[Combattimento vero e proprio]. NET/C# implementa backup del database MySQL basati su MySqlBackup.NET
https://www.itsvse.com/thread-10375-1-1.html
Pubblicato su 15/11/2022 18:19:56 |
Imparalo
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com