jueves, 24 de noviembre de 2016

Instalar Postgresql 9.6 y pgAdmin III en Fedora 25


PostgreSQL es un poderoso sistema de base de datos relacional de objetos de código abierto. Cuenta con más de 15 años de desarrollo activo y una arquitectura probada que le ha valido una sólida reputación de fiabilidad, integridad de datos y corrección. Se ejecuta en todos los principales sistemas operativos, incluyendo Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64) y Windows. Es totalmente compatible con ACID, tiene soporte completo para claves externas, combinaciones, vistas, disparadores y procedimientos almacenados (en varios idiomas). Incluye la mayoría de los tipos de datos SQL: 2008, incluyendo INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL y TIMESTAMP. También admite el almacenamiento de objetos grandes binarios, incluyendo imágenes, sonidos o video. Tiene interfaces de programación nativas para C / C ++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, entre otros, y documentación excepcional.


En la versión 25 de fedora, por defecto viene la versión 9.5 en los repositorios, pero sí es posible instalar la versión 9.6 con los siguientes pasos:

1.- Instalar el repositorio

#Para fedora 25 x86_64

sudo dnf install https://download.postgresql.org/pub/repos/yum/9.6/fedora/fedora-25-x86_64/pgdg-fedora96-9.6-3.noarch.rpm


2.- Ingresar como root

su -

3.- Instar los paquetes

dnf install postgresql96-server pgadmin3_96

Mostrará la siguiente ventana en la terminal:

4.- Iniciar initbd

/usr/pgsql-9.6/bin/postgresql96-setup initdb

Mostrará algo así:

5.- Iniciar el demonio de postgresql96

systemctl start postgresql-9.6
#Si quieren iniciar postgresql al iniciar el sistema usar este comando

systemctl enable postgresql-9.5


6.- Ingresar desde la consola a la línea de comandos de postgresql

su - postgres
-bash-4.3$ psql
psql (9.6.1)
Digite «help» para obtener ayuda.

postgres=#


7.- Cambiar la contraseña de postgresql por defecto

\password postgres


8.- Configuración de archivos:

gedit  /var/lib/pgsql/9.6/data/postgresql.conf 

Y agregar lo siguiente:
#Descomentar las siguiente líneas, tienen que quedar así.
listen_addresses = '*'  # what IP address(es) to listen on;
port = 5432    # (change requires restart)

9.- Configurar las IP's al archivo siguiente para postgresql.

gedit  /var/lib/pgsql/9.6/data/pg_hba.conf

Y modificar lo siguiente esto:
# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/24            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

10.- Reiniciar postgresql 9.6

systemctl start postgresql-9.6

Adicionalmente abrir pgAdminIII y crear una conexión:


Y eso sería todo.

8 comentarios:

  1. Abro pgAdminIII, intento crear una conexión y obtengo el siguiente mensaje de error: "Error conecting to the server: FATAL: la auntentificación Ident falló para el usuario ". ¿A qué se deberá esto? Edité el archivo "/var/lib/pgsql/9.6/data/pg_hba.conf" y lo modifiqué a como dice en esta guía pero no me sirvió. Lo hice de dos formas: por un lado comentando las entradas que tenía y por otro lado, agregándole las nuevas entradas al final.

    ResponderEliminar
    Respuestas
    1. reiniciaste el servidor?
      a veces no basta con eso, reinicia tu PC, y si no funciona, comentas de nuevo.

      Eliminar
    2. ¿Será que el problema se debe a que esto solo funciona en Fedora Server? Yo tengo un Fedora Workstation y ya lo actualicé a la versión 25.

      Eliminar
    3. no, me refería a que reiniciaras el servicio del servidor de base de datos postgresql 9.6

      Eliminar
  2. Respuestas
    1. Gracias por tu comentario.

      A qué te refieres con que no sirve?

      Eliminar
    2. Además, es para la versión 25, cuando aún esta versión de postgresql no estaba en la versión oficial de los repos, actualmente, ya está, así que, no entiendo a qué te refieres con que no "sirve"?

      Eliminar