Spostare un DB MySQL su un'altro disco o partizione
Capita talvolta di dover spostare il database MySQL a causa del riempimento della partizione /var/ o addirittura del disco stesso.
Vediamo come procedere:
1. Arrestiamo il servizio mysqld. ATTENZIONE questo bloccherà ad esempio i vostri siti o applicazioni quindi avvertite gli utenti!!
sudo /etc/init.d/mysql stop
2. Creiamo ora la cartella dove sarà ospitato il DB (nell'esempio il nuovo disco è stato montato come /data) e diamogli i permessi corretti
sudo mkdir /data/mysqldb
sudo chown -R mysql:mysql /data/mysqldb
3. Copiamo SOLO i file dei DB contenuti della vecchia cartella che ospitava il database nel nostro caso DB_SITO (non copiare: ibdata, ib_logfile, mysql_upgrade etc verranno ricreati autonomamente)
sudo cp -r /var/lib/mysql/DB_SITO /data/mysqldb/
sudo cp -r /var/lib/mysql/mysql /data/mysqldb/
4. Applichiamo i permessi
sudo chown -R mysql:mysql /data/mysqldb/*
5. Modifichiamo il file /etc/mysql/my.conf tramite nano o gedit facendo puntare la configurazione alla nuova cartella
sudo nano /etc/mysql/my.cnf
da:
datadir = /var/lib/mysql
a:
datadir = /data/mysqldb
6. (OPZIONALE) In alcune distribuzioni è necessario anche modificare il file /etc/apparmor.d/usr.sbin.mysqld, cambiando il percorso da /var/lib/mysql a quello nuovo.
7. Riavviate il servizio mysql
sudo /etc/init.d/mysql start
Si ricorda di leggere le Note Preliminari
Vediamo come procedere:
1. Arrestiamo il servizio mysqld. ATTENZIONE questo bloccherà ad esempio i vostri siti o applicazioni quindi avvertite gli utenti!!
2. Creiamo ora la cartella dove sarà ospitato il DB (nell'esempio il nuovo disco è stato montato come /data) e diamogli i permessi corretti
3. Copiamo SOLO i file dei DB contenuti della vecchia cartella che ospitava il database nel nostro caso DB_SITO (non copiare: ibdata, ib_logfile, mysql_upgrade etc verranno ricreati autonomamente)
4. Applichiamo i permessi
5. Modifichiamo il file /etc/mysql/my.conf tramite nano o gedit facendo puntare la configurazione alla nuova cartella
da:
a:
6. (OPZIONALE) In alcune distribuzioni è necessario anche modificare il file /etc/apparmor.d/usr.sbin.mysqld, cambiando il percorso da /var/lib/mysql a quello nuovo.
7. Riavviate il servizio mysql
Si ricorda di leggere le Note Preliminari
