Alterar o diretório de dados do Postgresql

Alterar o diretório de dados do Postgresql

O constante crescimento de dados do PostgreSQL, poderá acarretar em uma lotação do espaço de uma partição. Mas caso haja uma outra partição com mais espaço em disco, é possível realizar a mudança do local dos arquivos.

Vamos ao passo a passo para realizar esse procedimento.

1. Confira qual é o diretório de dados atual

# su - postgres psql
postgres=# SHOW data_directory;
postgres=# \q

2. Pare o serviço do PostgreSQL

Após ter copiado o diretório atual de dados do PostgreSQL, 

# systemctl stop postgresql
# mkdir /home/data_postgresql
# rsync -av /var/lib/pgsql/data/ /home/data_postgresql

3. Modifique o script de inicialização do serviço

Modifique o script de inicialização para apontar para o novo diretório de dados.

No arquivo /usr/lib/systemd/system/postgresql.service,  altere o valor da variável PGDATA para o novo local que é /home/data_postgresql.

# vim /usr/lib/systemd/system/postgresql.service

4. Inicie o serviço

Chegou a hora de iniciar o serviço e ver se tudo ocorreu como esperado.

# systemctl start postgresql

Como houve uma mudança no script de inicialização, é necessário recarregar todos os arquivos de unidade e recriar toda a árvore de dependência do Systemd.

# systemctl daemon-reload

Agora basta reiniciar o servidor para que tudo seja validado. Você também pode excluir o antigo caminho de armazenamento de dados do PostgreSQL.

# shutdown -r now
# rm -rf /var/lib/pgsql/data/

Isso é tudo meus amigos. Espero que este post tenha ajudado aqueles que buscavam por uma solução.

Até a próxima, muito obrigado!