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 1: Linha 1:
 +
== Antes de começar ==
 +
Os passos informados devem ser realizados por usuário de máquina virtual cloud com acesso root. Os seguintes requisitos são necessários: <br />
 +
1. [[Acesso SSH| Acesso ao SSH]] como usuário root. <br />
 +
2. Não ter nenhum PostgreSQL anterior instalado. <br />
 +
3. Estar usando o cPanel/WHM configurado na máquina.
 +
 +
----
 +
'''IMPORTANTE:''' O suporte de hospedagem e nem da cPanel/WHM são responsáveis por personalizações de instalações e configurações de seus serviços.
 +
----
 +
 +
== Sobre a versão padrão do PostgreSQL ==
 
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 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 PostgreSQL para este tutorial está na versão '''9.4''' e se ajustará ao seu cPanel. Os comandos devem ser executados exclusivamente como 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:<br />
+
== Instalando o RPM==
 +
Baixe as bibliotecas do PostgreSQL 9.4 oficial para o CentOS 6.x. Como exemplo, estamos baixando a versão PostgreSQL 9.4:<br />
 
<pre>rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-3.noarch.rpm</pre>
 
<pre>rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-3.noarch.rpm</pre>
  
'''2'''. Instale o PostgreSQL 9.4:<br />
+
== Instalando o PostgreSQL com YUM ==
 +
Instale o PostgreSQL 9.4:<br />
 
<pre>yum install postgresql94-server postgresql94</pre>
 
<pre>yum install postgresql94-server postgresql94</pre>
  
'''3'''. Inicie o DB:<br />
+
== Iniciando o serviço do PostgreSQL ==
 +
Inicie o DB:<br />
 
<pre>service postgresql-9.4 initdb</pre>
 
<pre>service postgresql-9.4 initdb</pre>
  
'''4'''. Após instalar, crie os atalhos referentes ao que o cPanel reconhece:<br />
+
== Atalhos  para a instalação PostgreSQL para que o cPanel o reconheça ==
 +
1. Após instalar, crie os atalhos referentes ao que o cPanel reconhece:<br />
 
<pre>ln -s /var/lib/pgsql/9.4/data /var/lib/pgsql
 
<pre>ln -s /var/lib/pgsql/9.4/data /var/lib/pgsql
 
ln -s /var/lib/pgsql/9.4/backups /var/lib/pgsql</pre>
 
ln -s /var/lib/pgsql/9.4/backups /var/lib/pgsql</pre>
  
'''5'''. Configure o serviço com o comando chkconfig:<br />
+
2. Os atalhos. Ignore erros básicos que houver se forem atalhos já existentes.
<pre>chkconfig postgresql-9.4 on</pre>
+
  
'''6'''. Inicie o serviço:<br />
+
<pre>
<pre>service postgresql-9.4 start</pre>
+
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   
 
+
'''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/.<br />
+
<pre>yum groupinstall "PostgreSQL Database Server PGDG" -y
+
yum install postgresql94-devel.x86_64 -y</pre>
+
 
+
'''8'''. Para a integração com cPanel/WHM:<br />
+
<pre>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 /var/lib/pgsql; ln -s 9.4/backups; ln -s 9.4/data; ln -s 9.4/pgstartup.log  
Linha 36: Linha 41:
 
ln -s /usr/pgsql-9.4/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.
 
  
'''9'''. Assim que instalado, no cPanel/WHM como root logado<br />
+
3. Assim que instalado, no cPanel/WHM como root logado<br />
'''9.1'''. Vá em '''"Home > SQL Services > Configure PostgreSQL"'''<br />
+
4. Vá em '''"Home » SQL Services » Configure PostgreSQL"'''<br />
'''9.2'''. '''Clique em "Install config"'''<br />
+
5. Clique em '''Install config'''<br />
'''9.3'''. Ainda  no WHM, coloque a senha no usuário postgres
+
6. 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".
+
6.1. 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:<br />
+
7. Atualize o  phpPgAdmin:<br />
 
<pre>/usr/local/cpanel/bin/updatephppgadmin --force  </pre>
 
<pre>/usr/local/cpanel/bin/updatephppgadmin --force  </pre>
  
'''11. Acesso remoto:'''
+
== Configurando o serviço do PostgreSQL no sistema operacional e iniciando ==
 +
 
 +
1. Configure o serviço com o comando chkconfig:<br />
 +
<pre>chkconfig postgresql-9.4 on</pre>
 +
 
 +
2. Inicie o serviço:<br />
 +
<pre>service postgresql-9.4 start</pre>
 +
 
 +
 
 +
== Compilando o PHP para a versão do PostgreSQL no EasyApache 3 ==
 +
1. 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/.<br />
 +
<pre>yum groupinstall "PostgreSQL Database Server PGDG" -y
 +
yum install postgresql94-devel.x86_64 -y</pre>
 +
 
 +
 
 +
== Acesso remoto ==
 +
 
 +
1. Para o acesso remoto, execute este comando abaixo na íntegra:<br />
  
 
<pre>echo  "local all all        md5
 
<pre>echo  "local all all        md5
Linha 57: Linha 78:
 
host all postgres  ::1/128    md5" > /var/lib/pgsql/data/pg_hba.conf </pre>
 
host all postgres  ::1/128    md5" > /var/lib/pgsql/data/pg_hba.conf </pre>
  
'''12'''. Edite o arquivo /var/lib/pgsql/data/postgresql.conf com usuário "postgres" como acesso remoto, alterando:
+
2. Edite o arquivo '''/var/lib/pgsql/data/postgresql.conf''' com usuário "postgres" como acesso remoto. Os comandos a seguir realizam backup do original e modificam o necessário. <br />
  
 
<pre>cp -p /var/lib/pgsql/data/postgresql.conf /var/lib/pgsql/data/postgresql.conf.bk
 
<pre>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</pre>
 
sed -i "s#.*listen_addresses.*#listen_addresses = '*' #"  /var/lib/pgsql/data/postgresql.conf</pre>
  
'''13'''. Depois, configure o template de pg_hba.conf para que o painel não o altere em atualizações futuras:
+
3. Depois, configure o template de '''pg_hba.conf''' para que o painel não o altere em atualizações futuras:
  
 
<pre>cp /var/lib/pgsql/data/pg_hba.conf /var/cpanel/templates/postgres/main.local</pre>
 
<pre>cp /var/lib/pgsql/data/pg_hba.conf /var/cpanel/templates/postgres/main.local</pre>

Edição das 16h07min de 22 de outubro de 2016

Índice

Antes de começar

Os passos informados devem ser realizados por usuário de máquina virtual cloud com acesso root. Os seguintes requisitos são necessários:
1. Acesso ao SSH como usuário root.
2. Não ter nenhum PostgreSQL anterior instalado.
3. Estar usando o cPanel/WHM configurado na máquina.


IMPORTANTE: O suporte de hospedagem e nem da cPanel/WHM são responsáveis por personalizações de instalações e configurações de seus serviços.


Sobre a versão padrão do PostgreSQL

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 exclusivamente como usuário root SSH, de preferência com básicos conhecimentos em Linux e editor de texto simples.


Instalando o RPM

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-3.noarch.rpm

Instalando o PostgreSQL com YUM

Instale o PostgreSQL 9.4:

yum install postgresql94-server postgresql94

Iniciando o serviço do PostgreSQL

Inicie o DB:

service postgresql-9.4 initdb

Atalhos para a instalação PostgreSQL para que o cPanel o reconheça

1. 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

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

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  


3. Assim que instalado, no cPanel/WHM como root logado
4. Vá em "Home » SQL Services » Configure PostgreSQL"
5. Clique em Install config
6. Ainda no WHM, coloque a senha no usuário postgres

6.1. 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".

7. Atualize o phpPgAdmin:

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

Configurando o serviço do PostgreSQL no sistema operacional e iniciando

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

chkconfig postgresql-9.4 on

2. Inicie o serviço:

service postgresql-9.4 start


Compilando o PHP para a versão do PostgreSQL no EasyApache 3

1. 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


Acesso remoto

1. Para o acesso remoto, execute este comando abaixo na íntegra:

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 

2. Edite o arquivo /var/lib/pgsql/data/postgresql.conf com usuário "postgres" como acesso remoto. Os comandos a seguir realizam backup do original e modificam o necessário.

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

3. 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