Skip to content

Backup e ripristino ​

Clic destro su un database e Backup / Ripristino. Entrambe le direzioni stanno nella stessa scheda.

Eseguire un backup ​

  1. Passa alla modalità Backup.
  2. Scegli il file di destinazione.
  3. Includi dati — attivo per un backup completo, disattivo per un'istantanea della sola struttura.
  4. Avvia.

Una barra di avanzamento segue il dump e il risultato riporta quanti oggetti sono stati scritti.

L'output è un normale file .sql: istruzioni CREATE più INSERT quando i dati sono inclusi. Puoi leggerlo, confrontarlo, tenerlo sotto controllo di versione e ripristinarlo con qualunque strumento che parli SQL — non c'è nulla di specifico di NabuSQL.

Ogni tabella arriva con la struttura completa — chiavi, indici, sequenze e colonne identity, tipi — e i suoi trigger, e dopo le tabelle seguono le viste, le procedure e le funzioni del database. Chiavi esterne e trigger stanno alla fine del file, così il ripristino non dipende dall'ordine delle tabelle e non attiva i trigger sulle righe ripristinate. Cosa contiene un dump ha i dettagli per ogni motore.

Su MariaDB il file inizia con le sequenze del database, ciascuna impostata per continuare da dove era arrivata, così una colonna con default NEXTVAL continua a numerare senza riusare un valore — anche quando il backup viene ripristinato con un altro nome di database. Le tabelle con versionamento di sistema tornano versionate, con le righe attuali; la loro cronologia delle righe riparte da zero. Su MySQL e MariaDB le colonne binarie — immagini, file, VECTOR — vengono scritte byte per byte come letterali esadecimali.

Backup creati con la versione 1.0.109 o precedenti

Su MySQL e MariaDB quelle versioni scrivevano i valori binari che non erano testo valido come segnaposto '<binary N bytes>' invece dei loro byte. Un backup del genere si ripristina senza errori, ma quelle celle contengono il segnaposto. Se conservate backup di tabelle con immagini o file, createne uno nuovo.

Ripristinare ​

  1. Passa alla modalità Restore e scegli il file.
  2. Imposta le opzioni:
OpzioneEffetto
Elimina se esisteElimina ogni oggetto prima di ricrearlo. Necessario quando si ripristina su un database esistente
Disabilita controllo chiavi esterneDisattiva i controlli FK durante il ripristino, così le tabelle possono essere caricate in qualsiasi ordine
Continua in caso di erroreProsegue dopo un'istruzione fallita invece di fermarsi
  1. Avvia. L'avanzamento è mostrato in percentuale, con un conteggio degli errori in tempo reale.

Un ripristino può essere annullato mentre è in corso.

Alla fine NabuSQL riporta quante istruzioni sono riuscite sul totale ed elenca gli errori raccolti — scopri cosa non è stato ripristinato invece di dare per scontato che sia andato tutto bene.

Il ripristino sovrascrive

Con Elimina se esiste attivo, gli oggetti esistenti nel database di destinazione vengono eliminati e sostituiti. Se non sei certo del contenuto del file, ripristina prima in un database di prova.

Vie più rapide ​

  • Dump SQL file ▸ su un database o una tabella (clic destro) scrive struttura o struttura+dati direttamente, senza la scheda di backup. Sulle tabelle può scrivere anche un campione delle righe.
  • ▶ Esegui file SQL su un database esegue qualsiasi file .sql, l'equivalente manuale di un ripristino.

Automatizzare i backup ​

Il pianificatore attività può eseguire un backup a intervalli.

Il pianificatore funziona solo mentre NabuSQL è aperto

Fa parte dell'applicazione, non è un servizio di sistema. Per backup non presidiati di un server di produzione usa il pianificatore del tuo sistema operativo con mysqldump, pg_dump o equivalenti.

Cosa un backup non copre ​

Il dump di un database contiene quel database. Gli elementi a livello di server — utenti e privilegi, configurazione, altri database — non ci sono. Per utenti e privilegi MySQL vedi Gestione utenti.

Un dump si ripristina solo sullo stesso tipo di server

Il file è scritto nell'SQL del motore di origine — le sue virgolette per gli identificatori, i suoi tipi, i suoi AUTO_INCREMENT e ENGINE=. Ripristinare un dump MySQL in PostgreSQL fallisce alla prima istruzione. Per spostare un database tra motori diversi usa il Trasferimento dati, che rigenera la struttura per la destinazione invece di riprodurre l'SQL dell'origine.