Se il tuo database è cresciuto troppo,se finalmente hai aggiunto uno spazio dedicato ai dati del tuo mysql per fare un po’ di ordine questa semplice guida fa al caso tuo.Sto utilizzando una distribuzione Ubuntu,quindi basata su Debian.Pur non essendo un’operazione difficile consiglio sempre di effettuare un backup di tutti i dati importanti…o per comodità,se usi vmware, una bella snapshot del server.

Operazioni preliminari:

Loggati al tuo database mysql in locale

mysql -u TuoUtenteMysql -p TuaPassword

e verifica la cartella attuale dei dati in questo modo:

select @@datadir;

Per comodità d’ora in poi mi riferirò a questo percorso con: “/Path/Dati/Vecchia”. Mentre la directory dove dovranno finire i dati sarà: “/Nuovo/Path/Dati”

Ferma il Servizio MYSQL

E’ di fondamentale importanza per garantire la corretta copia di tutte le tabelle e i dati di mysql.quindi non dimenticarti di farlo!

sudo systemctl stop mysql

Fai attenzione che il servizio mysql sia effettivamente fermo rilanciando lo stesso comando con “status” al posto di “stop”.

Spostamento dei dati

Passiamo alla sincronizzazione dei dati nel nuovo percorso facendo attenzione a non mettere alcuno Slash al termine dei percorsi:

sudo rsync -av /Path/Dati/Vecchia /Nuovo/Path/Dati

I vecchi dati, nel vecchio percorso, rimarranno comunque intatti.Ora puoi spostarli per liberare spazio o semplicemente archiviarli.

Configurazione mysql e apparmor

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

Trova la riga che inizia con:  datadir=  e sostituisci il vecchio percorso con /Nuovo/Path/Dati

Ora devi aggiungere un alias nel file di configurazione di apparmor:

sudo vi /etc/apparmor.d/tunables/alias

e aggiungi questa riga:

alias /Path/Dati/Vecchia - /Nuovo/Path/Dati,

Alcune versioni dello scprit di avvio di mysql controllano la presenza della directory originaria del database.Se avete spostato tutta la directory,prima di avviare mysql lanciate:

sudo mkdir /var/lib/mysql/mysql -p

Pronti!

Ora non resta che riavviare il servizio apparmor prima e mysql  poi.

Potete verificare l’effettiva configurazione rilanciando i primi comandi della guida e controllare se il percorso datadir è quello desiderato.