Come ripristinare il database mysql dai file fisici?


12

Ho appena reinstallato il mio sistema, non ho eseguito il dump del backup ma ho ancora la cartella fisica delle mie precedenti installazioni mysql.

È possibile usarlo per ripristinare e aggiornare la mia configurazione attuale?

Risposte:


11

È possibile, ma non suggerito. Se avessi tentato, ecco come lo farei.

  1. Installa mysql, configura il più vicino possibile al vecchio server o usa semplicemente la stessa configurazione. Assicurati che si avvii, si riavvii e puoi accedervi. Ora spegni mysql.

  2. Spostare la vecchia installazione di mezzo con mv /var/lib/mysql /var/lib/mysql.orig

  3. sincronizzare o copiare i nuovi file in posizione. sudo rsync -av /old/mysql/ /var/lib/mysql/Suggerisco di mantenere i file originali nel loro stato attuale nel caso in cui non funzionasse.

  4. sudo chown -R mysql: /var/lib/mysqle quindi avviare mysql. Controlla i registri, assicurati che le cose appaiano bene, quindi accedi a Mysql. Controlla che i tuoi dati siano presenti.

Supponendo che tutto sia andato per il meglio, dovresti essere pronto. Ora vai subito a fare un vero dorso di Mysql in modo da non dover fare questo tipo di sciocchezze la prossima volta.


1
Starei attento a fare il passaggio 2 sopra prima del passaggio 1. Vuoi assicurarti che l'installazione e l'avvio di mysqld non sovrascrivano il tuo vecchio database di sistema.
malcolmpdx,

È un buon punto. Ho pensato che / var / lib / mysql non provenisse dall'installazione originale. In ogni caso, sì, assicurati che i tuoi file originali non siano in / var / lib / mysql prima di iniziare. Si desidera iniziare con una nuova istanza di Mysql prima di iniziare a provare a caricare i dati originali.
Kashani,

grazie ho leggermente modificato il passaggio per adattarmi al mio ambiente Zend Server CE e MacOS e funziona!
Giovanni

@Kashani ho seguito queste istruzioni (centos) ma sul nuovo server ottengo la visualizzazione della tabella ma i dati e la tabella non .. idee? vedo tutte le tabelle all'interno della cartella che non vengono visualizzate (sembra anche che sia il set di caratteri giusto)
K2xL

2
@ K2xL Non sono sicuro di quello che stai vedendo. Se crei una nuova domanda con i dettagli di ciò che stai vedendo e di come l'hai realizzata, sarei felice di guardarla. Tieni presente che il metodo sopra funziona solo per l'intera installazione di Mysql, non per singoli database perché le tabelle Innodb hanno dati memorizzati nei file ibdata principali indipendentemente dal fatto che tu stia utilizzando o meno innodb_file_per_table.
Kashani,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.