Alterando o diretório de dados do MySQL

Olá pessoal, o objetivo aqui é bem breve. Só vou apresentar como alterar o diretório de dados do MySQL. O procedimento é muito simples e consiste em alterar o parâmetro datadir no arquivo /etc/my.cnf, parar o daemon do MySQL, copiar/mover os arquivos para o novo diretório e então iniciar novamente o mysqld.

moveData

Vamos ver como fazer.

Altere o parâmetro datadir do arquivo /etc/my.cnf:

[root@mysql-master ~]# vi /etc/my.cnf
......
# datadir=/var/lib/mysql
datadir=/mysql
......

Observe que eu só comentei o datadir antigo e inseri uma nova entrada.

Agora pare o daemon mysqld:

[root@mysql-master ~]# service mysqld stop
Stopping mysqld: [ OK ]

Mova os arquivos do datadir origem para o novo destino:

[root@mysql-master ~]# mv /var/lib/mysql/* /mysql/

Verifique se os arquivos estão todos no novo datadir:

[root@mysql-master ~]# ls -lh /mysql/
total 109M
-rw-r-----. 1 mysql mysql 56 Feb 14 21:46 auto.cnf
-rw-------. 1 mysql mysql 1.7K Feb 14 21:46 ca-key.pem
-rw-r--r--. 1 mysql mysql 1.1K Feb 14 21:46 ca.pem
-rw-r--r--. 1 mysql mysql 1.1K Feb 14 21:46 client-cert.pem
-rw-------. 1 mysql mysql 1.7K Feb 14 21:46 client-key.pem
-rw-r-----. 1 mysql mysql 356 Feb 17 21:43 ib_buffer_pool
-rw-r-----. 1 mysql mysql 12M Feb 17 21:43 ibdata1
-rw-r-----. 1 mysql mysql 48M Feb 17 21:43 ib_logfile0
-rw-r-----. 1 mysql mysql 48M Feb 14 21:46 ib_logfile1
drwxr-x---. 2 mysql mysql 4.0K Feb 14 21:46 mysql
drwxr-x---. 2 mysql mysql 4.0K Feb 14 21:46 performance_schema
-rw-------. 1 mysql mysql 1.7K Feb 14 21:46 private_key.pem
-rw-r--r--. 1 mysql mysql 452 Feb 14 21:46 public_key.pem
-rw-rw-r--. 1 mysql mysql 12 Feb 17 19:51 script.sql
-rw-r--r--. 1 mysql mysql 1.1K Feb 14 21:46 server-cert.pem
-rw-------. 1 mysql mysql 1.7K Feb 14 21:46 server-key.pem
-rw-rw-r--. 1 mysql mysql 8.6K Feb 17 19:52 status.txt
drwxr-x---. 2 mysql mysql 12K Feb 14 21:46 sys
drwxr-x---. 2 mysql mysql 4.0K Feb 17 20:22 world

Agora é só iniciar novamente o daemon mysqld:

[root@mysql-master ~]# service mysqld start
Starting mysqld: [ OK ]

Sem mais para hoje. A ideia era só uma dica rápida mesmo.
Se tiver dúvidas deixe um comentário.

Abraços,
Franky