Install PostgreSQL 8.3.7 en Centos 5.3
La versión de Postgres para CentOS es la 8.1.x, lo que necesito es instalar la ultima version estable hasta la fecha (8.3.7), para hacerlo realizé lo siguiente:
- Excluir postgres del repositorio Base de Centos:
# vi /etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS-$releasever – Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
# Excluir postgres
exclude=postgresql*#released updates
[updates]
name=CentOS-$releasever – Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
# Excluir postgres
exclude=postgresql*
- Añadir el nuevo repositorio de postgres desde http://yum.pgsqlrpms.org/reporpms/repoview/pgdg-centos.html, un nivel mas arriba de esta página estan los repositorios para Fedora y Red Hat
# wget http://yum.pgsqlrpms.org/reporpms/8.3/pgdg-centos-8.3-6.noarch.rpm
# rpm -ivh pgdg-centos-8.3-6.noarch.rpm
- Instalación de PostgreSQL server:
# yum install postgresql postgresql-server
… lot of output ….
despúes de la instalación necesito cambiar la ubicación de las bases de datos para una partición mayor, en mi caso ‘/home’, antes debo iniciar el servidor:
# service initdb postgresql -> Crea los archivos necesario e inicia el servidor
# su – postgres -c psql -> inicia sesión como postgres para poder cambiar la ubicación
Digite: \copyright para ver los términos de distribución
\h para ayuda de órdenes SQL
\? para ayuda de órdenes psql
\g o punto y coma («;») para ejecutar la consulta
\q para salir
postgres=# initdb -D /home/postgres -> Esta carpeta debe existir y el dueño debe ser el usuario postgres
postgres=# \q -> Salir
Ahora los datos se guardan en /home/postgres, al hacer initdb -D /home/postgres los archivos necesario se crean allí.
