Come posso aggiornare MySQL 5.1 a MySQL 5.6 e migrare i dati

3

In precedenza ho installato MySQL 5.1 utilizzando l'installer, da allora ho creato un numero di utenti / database e ora vorrei passare a 5.6. Qual è la procedura per farlo?

    
posta Alessandro Vernet 24.04.2013 - 20:25
fonte

2 risposte

6

Quanto segue presuppone che MySQL 5.1 sia installato in /usr/local/mysql-5.1.46-osx10.6-x86_64 e che MySQL 5.6 venga installato in /usr/local/mysql-5.6.11-osx10.7-x86_64 . I nomi esatti delle directory potrebbero differire in base al numero esatto della versione che stai utilizzando.

  • Scarica il programma di installazione di MySQL 5.6 , ad esempio in formato DMG ed esegui mysql-5.6.11-osx10.7-x86_64.pkg
  • Arresta il server
    • Con MySQL Workbench, vai su Amministrazione del server
    • apri mysql @ localhost (aggiungi connessione se non ci sono)
    • sotto Avvio / Shupdown , fai clic su Arresta server
  • Crea backup di 5,6 directory dati: sudo mv /usr/local/mysql-5.6.11-osx10.7-x86_64/data /usr/local/mysql-5.6.11-osx10.7-x86_64/data.save
  • Copia la directory dei dati da 5.1: sudo cp -a /usr/local/mysql-5.1.46-osx10.6-x86_64/data /usr/local/mysql-5.6.11-osx10.7-x86_64/
  • Avvia server (simile all'arresto, vedi sopra)
  • Esegui mysql_upgrade , che controlla tutte le tabelle e il sistema degli aggiornamenti tabelle
  • Controlla i dati lì, con MySQL Workbench
    • In Amministrazione server , sotto Utenti e privilegi, controlla che gli utenti previsti siano presenti
    • In Sviluppo SQL , apri una connessione al database ed esegui alcune query per verificare che i dati previsti siano presenti.
  • In MySQL Workbench, se si ottiene "Errore durante l'eliminazione dell'errore di immissione della password durante la connessione con MySQL Workbench", eseguire l'aggiornamento all'ultima versione di MySQL Workbench
risposta data 24.04.2013 - 20:25
fonte
1

Questo ha funzionato per me. Quasi lo stesso scenario. MySQL 5.1-5.6 solo Mi imbatto in un problema durante l'aggiornamento di una delle mie tabelle di database (la più grande), non ho eseguito il dump correttamente e sono stato rifiutato durante il caricamento su un nuovo server, è durato per sempre e scaduto più volte, quindi ho dovuto fare qualcosa fuori dai libri. (Prima di scaricare il database, eseguire un backup completo, riparare, controllare e tutta la manutenzione necessaria in modo da non avere dati incasinati nel nuovo caricamento. Inoltre, effettuare un bonifico diretto, non utilizzare il wireless con database di grandi dimensioni.

1 - Tutte le mie tabelle, eccetto la più grande, caricate senza problemi (esportazione regolare e importazione regolare tramite phpmyadmin da 5.1 a 5.6 MySQL diversi server affiancati con il mio laptop nel mezzo)

2 - Sono entrato nella directory dei dati di origine MySQL (dipende dal tuo sistema ma su Centos 7 è in / var / lib / mysql / ) e cerco la tabella con il problema, ha 3 i file nominati dopo la tabella ( nome_tabella.MYD, nome_tabella.MIA e nome_tabella.FRM ) devi scaricare questi 3 manualmente tramite FTP come Filezilla o copiare in un dispositivo USB)

3 - Nel caso, crea un target blank temp_database e dai tutti i diritti a un utente. MySQL crea una directory aggiuntiva chiamata temp_database in cui devi copiare quei 3 file per quella tabella. (non è necessario fare confusione con le tabelle aggiornate, se è necessario caricare tutte le tabelle, è possibile procedere alla copia di tutti i file delle tabelle in quella nuova directory temporanea, è più veloce quando si copia direttamente senza usare MySQL)

4 - Una volta trasferiti i file di tabella nella nuova directory temporanea di destinazione, sarà possibile visualizzarli su phpmyadmin (sul nuovo server) come temp_database, controllare la tabella, assicurarsi che tutti i dati e i record siano presenti correttamente , visualizzato e contabilizzato.

5 - Poiché abbiamo creato una copia tramite FTP o una normale copia USB, ovviamente il file è LEGGI SOLO e, eseguendo una tabella di controllo o di riparazione, lo dirà. Devi fare CHMOD attraverso la shell su quei file in modo che MySQL possa elaborare la riparazione. Suppongo che, durante la riparazione del file, venga eseguita la riparazione e l'aggiornamento del formato della tabella o di qualsiasi altro problema di versione.

6 - Dopo che sei soddisfatto della tabella e puoi inserire, aggiornare ed eliminare un record come test, puoi semplicemente spostare la tabella o le tabelle nel database corretto usando phpmyadmin per far funzionare tutto come al solito. Rimuovi quel database temporaneo e sei impostato.

L'ho solo eseguito nello stesso scenario, dall'aggiornamento 5.1-5.6. Non so se la stessa procedura funzionerà per altre versioni, non è stata provata, ma chiunque legga questo articolo, può seguire la mia procedura e aggiornarci se funziona con altre versioni di MySQL o altri database come MariaDB, faccelo sapere.

Spero che aiuti. Cin cin.

    
risposta data 08.12.2018 - 01:35
fonte

Leggi altre domande sui tag