MariaDB - Metodi di caricamento del backup

In questo capitolo impareremo i vari metodi di caricamento dei backup. Il ripristino di un database da un backup è un processo semplice ea volte terribilmente lungo.

Sono disponibili tre opzioni per il caricamento dei dati: l'istruzione LOAD DATA, mysqlimport e un semplice ripristino di mysqldump.

Utilizzo di LOAD DATA

L'istruzione LOAD DATA funziona come un caricatore di massa. Rivedi un esempio del suo utilizzo che carica un file di testo -

mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl;

Notare le seguenti qualità di un'istruzione LOAD DATA:

  • Utilizza la parola chiave LOCAL per impedire a MariaDB di eseguire una ricerca approfondita dell'host e utilizza un percorso molto specifico.

  • L'istruzione assume un formato costituito da righe terminate da avanzamenti riga (newline) e valori di dati separati da tabulazioni.

  • Utilizzare la clausola FIELDS per specificare in modo esplicito la formattazione dei campi su una riga. Utilizzare la clausola LINES per specificare la fine della riga. Rivedi un esempio di seguito.

mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl
   FIELDS TERMINATED BY '|'
   LINES TERMINATED BY '\n';
  • L'istruzione presuppone che le colonne all'interno del file di dati utilizzino lo stesso ordine della tabella. Se è necessario impostare un ordine diverso, è possibile caricare il file come segue:

mysql> LOAD DATA LOCAL INFILE 'products_copy.txt' INTO TABLE empty_tbl (c, b, a);

Utilizzando MYSQLIMPORT

Lo strumento mysqlimport funge da wrapper LOAD DATA consentendo le stesse operazioni dalla riga di comando.

Caricare i dati come segue:

$ mysqlimport -u root -p --local database_name source_file.txt

Specificare la formattazione come segue:

$ mysqlimport -u root -p --local --fields-terminated-by="|" \
   --lines-terminated-by="\n" database_name source_file.txt

Utilizzare il --columns opzione per specificare l'ordine delle colonne -

$ mysqlimport -u root -p --local --columns=c,b,a \
   database_name source_file.txt

Utilizzando MYSQLDUMP

Ripristino con mysqldump richiede questa semplice istruzione per caricare nuovamente il file di dump nell'host -

shell> mysql database_name < source_file.sql

PERSONAGGI E CITAZIONI SPECIALI

In un'istruzione LOAD DATA, virgolette e caratteri speciali potrebbero non essere interpretati correttamente. L'istruzione assume valori non quotati e tratta i backslash come caratteri di escape. Utilizza la clausola FIELDS per specificare la formattazione. Punta alle virgolette con "ENCLOSED BY", che causa la rimozione delle virgolette dai valori dei dati. Cambia escape con "ESCAPED BY".