Mudanças entre as edições de "Instalando e configurando o PostgreSQL 9 no cPanel/WHM"

De Wiki Integrator do Brasil
Ir para: navegação, pesquisa
Linha 34: Linha 34:
 
cd /usr/pgsql-9.4/lib; ln -s libpq.so.5.7 libpq.so
 
cd /usr/pgsql-9.4/lib; ln -s libpq.so.5.7 libpq.so
  
ln -s /usr/pgsql-9.3/bin/pg_config /usr/bin  </pre>
+
ln -s /usr/pgsql-9.4/bin/pg_config /usr/bin  </pre>
  
 
'''8.1''' Ignore erros básicos que houver se forem atalhos já existentes.
 
'''8.1''' Ignore erros básicos que houver se forem atalhos já existentes.

Edição das 16h26min de 18 de outubro de 2016

O cPanel opera na versão 8.x no CentOS 6. Para instalar uma versão mais recente, o script de instalação padrão do painel não funciona. O PostgreSQL para este tutorial está na versão 9.4 e se ajustará ao seu cPanel. Os comandos devem ser executados com o usuário root SSH, de preferência com básicos conhecimentos em Linux e editor de texto simples. O suporte da Integrator e nem da cPanel/WHM são responsáveis por personalizações de instalações e configurações de seus serviços.

Os passos

1. Baixe as bibliotecas do PostgreSQL 9.4 oficial para o CentOS 6.x. Como exemplo, estamos baixando a versão PostgreSQL 9.4:

rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-1.noarch.rpm

2. Instale o PostgreSQL 9.4:

yum install postgresql94-server postgresql94

3. Inicie o DB:

service postgresql-9.4 initdb

4. Após instalar, crie os atalhos referentes ao que o cPanel reconhece:

ln -s /var/lib/pgsql/9.4/data /var/lib/pgsql
ln -s /var/lib/pgsql/9.4/backups /var/lib/pgsql

5. Configure o serviço com o comando chkconfig:

chkconfig postgresql-9.4 on

6. Inicie o serviço:

service postgresql-9.4 start

7. Para compilar o PHP com a versão mais atual do PostgreSQL, precisa instalar a versão devel. Isso adicionará os fontes para o PHP em /usr/pgsql-9.4/include/.

yum groupinstall "PostgreSQL Database Server PGDG" -y 
yum install postgresql94-devel.x86_64 -y

8. Para a integração com cPanel/WHM:

cd /usr/pgsql-9.4/bin/; for f in *; do echo $f; [ -e /usr/bin/$f ] && mv /usr/bin/$f /usr/bin/$f.8; ln -s $(pwd)/$f /usr/bin/$f; done  

cd /var/lib/pgsql; ln -s 9.4/backups; ln -s 9.4/data; ln -s 9.4/pgstartup.log 
cd /usr/pgsql-9.4/lib; ln -s libpq.so.5.7 libpq.so

ln -s /usr/pgsql-9.4/bin/pg_config /usr/bin  

8.1 Ignore erros básicos que houver se forem atalhos já existentes.

9. Assim que instalado, no cPanel/WHM como root logado
9.1. Vá em "Home > SQL Services > Configure PostgreSQL"
9.2. Clique em "Install config"
9.3. Ainda no WHM, coloque a senha no usuário postgres

O WHM configurará o arquivo /root/.pgpass com a senha que adicionou no usuário "postgres". Isso permitirá executar comandos "psql" dentro do terminal SSH sem digitar a senha do usuário "postgres".

10. Atualize o phpPgAdmin:

/usr/local/cpanel/bin/updatephppgadmin --force  

11. Acesso remoto:

echo  "local all all        md5
host all all  127.0.0.1   255.255.255.255   md5
host    all         all         0.0.0.0/0             md5
host    all         all         ::1/128               md5

host all postgres   ::1/128    md5" > /var/lib/pgsql/data/pg_hba.conf 

12. Edite o arquivo /var/lib/pgsql/data/postgresql.conf com usuário "postgres" como acesso remoto, alterando:

cp -p /var/lib/pgsql/data/postgresql.conf /var/lib/pgsql/data/postgresql.conf.bk
sed -i "s#.*listen_addresses.*#listen_addresses = '*' #"  /var/lib/pgsql/data/postgresql.conf

13. Depois, configure o template de pg_hba.conf para que o painel não o altere em atualizações futuras:

cp /var/lib/pgsql/data/pg_hba.conf /var/cpanel/templates/postgres/main.local