Instalar PostgreSQL en Ubuntu

Instalar PostgreSQL en UbuntuCon todos los problemas que hay detras de MySQL siempre estoy con la idea de cambiarme a PostgreSQL que ademas de no estar en peligro de desaparecer es mucho mas potente que MySQL…segun gente que creo que sabe del tema Instalar PostgreSQL en Ubuntu

Las razones por la que sigo o seguia usando MySQL son 2:

  1. Casi todos mis proyectos que hago con KumbiaPHP framework los almacenaba en godaddy o hosting que solo tienen MySQL como motor base de datos.
  2. La mas importante razon es que no habia podido instalar PostgreSQL en Linux.

Contra la primer razon no puedo hacer nada pero lo segundo he logrado cambiarlo al fin Instalar PostgreSQL en Ubuntu La verdad la instalacion es una pavada si se sabe como hacerlo. Voy a describir los pasos que yo segui, he logrado instalar PostgreSQL 8.4 en Kubuntu 9.10 pero servira para cualquier derivado de Ubuntu en sus ultimas versiones.

Lo primero sera instalar los paquetes necesarios

sudo apt-get install postgresql postgresql-client pgadmin3

Eso instalara el motor, el cliente y un administrador. A continuacion tenemos que cambiar 2 claves, una es la del usuario administrador de PostgreSQL y la otra es la del usuario postgres que se crear al instalar los paquetes de arriba.

Para cambiar la pass del sistema hacemos asi:

sudo passwd postgres

te pedira la contraseña 2 veces para asegurarte que escribas bien. Ahora cambiamos la contraseña de administrador de PostgreSQL, lo hacemos asi:

sudo su postgres -c “psql template1″

A continuacion…

template1=# ALTER USER postgres WITH PASSWORD ‘nueva_contraseña’;

La verdad no tengo idea si se debe usar la misma contraseña que cuando cambiamos la del sistema pero por las dudas pongan la misma…y no se olviden del punto y coma del final…me tomo media hora darme cuenta que me lo habia olvidado Instalar PostgreSQL en Ubuntu  Si la contraseña se cambia correctamente les devolvera el mensaje ALTER ROLE y luego escriben en la misma consola:

template1=# \q

para salir.

Bien ahora debemos editar 2 archivos porque la instalacion por defecto bloquea las conexiones y no podremos conectarnos desde PgAdmin3. Yo uso el editor kate pero si estan en ubuntu reemplazen kate por gedit.

sudo kate /etc/postgresql/8.4/main/postgresql.conf

En el archivo buscan la linea

#listen_addresses = ‘localhost’

y la cambian por

listen_addresses = ‘*’

y tambien buscan la linea

#password_encryption = on

y la cambian por

password_encryption = on

Ahora otro archivo…

sudo kate /etc/postgresql/8.4/main/pg_hba.conf

Buscan las lineas

# “local” is for Unix domain socket connections only
local all all ident sameuser

Y las cambian por

# “local” is for Unix domain socket connections only
local all all md5

Ahora reinician el demonio para que los cambios surtan efecto:

sudo /etc/init.d/postgresql-8.4 restart

Y eso es todo, con eso ya deberian poder conectarse y administrar postgress desde PgAdmin3.

Algunas consideraciones:

  • Los cambios que hicimos en postgresql.conf son para permitir conexiones remotas por lo tanto no es necesario activarlos, si comodo pero no necesario.
  • Puede que les haya pasado como a mi, en vez del comando de instalacion que yo puse al inicio pusieron otro o por X motivos no tienen la carpeta main no los 2 archivos que hay que editar, en ese caso deben ejecutar:

    pg_createcluster 8.4 main

  • A lo largo de este mini tuto vieron que en varios comandos use la version de postgress pero que en la instalacion no la especifique, eso es porque al instalar con los comandos que yo les digo se instalara siempre la ultima version…para saber que version escriban esto en la consola luego de la instalacion:

    psql –version

    les devolvera algo como

    psql (PostgreSQl) 8.4.2

    o sea que en todas partes donde se requiera el numero de version usaran ’8.4′

Fuentes: guiaubuntu, lobotuerto y @DeivinsonTejeda

Un poco largo pero hasta donde se vale la pena…ademas si usan KumbiaPHP framework cambiar de un motor a otro su aplicaciones es cuestion de cambiar una linea en todo el programa y ya Instalar PostgreSQL en Ubuntu

Suscribete GRATIS!
Recibe las novedades de Paraiso Linux en tu email

About perro

Casi Ingeniero en Informática. Programador en PHP y KumbiaPHP. Lo que mas adoro en el mundo es el conocimiento. Y el anime....y Japon...y el basketball...y bloguear claro. Aun sigo buscando la manera de hacer mi primer millon :)
Categorias PostgreSQL
Tags , , .
  • oscar

    Interesante buen articulo, ya lo sabia, pero de todos modos si hubiera conocido antes esto me hubiera ahorrado tiempo :up:

    • http://latingeeks.net perro

      si yo tambien…mucho tiempo :-o
      gracias por comentar

  • nasheliux

    No sabes cuánto me fue de ayuda tu artículo, ya habia probado instalar varias veces el postgresql y nada más no podia conectarme al servidor.

    Ahora busco información del Slony-I es para hacer la replicación de las bases de datos, si sabes de algo, te agradecería mucho tu información.

    Gracias!

    • http://blogjapon.com.ar perro

      Todavia no estoy trabajando con PostgreSQL a ese nivel. Pero seguramente cuando me toque hacerlo escribire un post al respecto.
      Saludos y gracias por comentar :)

  • carpin

    Saludos es buen tutorial y me ahorra trabajao gracias, si sabes donde guarda los archivos de la base de datos pudieras comentarlo.
    :up:

  • http://freewhynot.blogspot.com demonik

    Muy bien todo a la perfeccion

  • ljrossi

    Se quedo trabajo aqui, no encuentra la orden ???

    sudo su postgres -c “psql template1″

    template1″: “psql: orden no encontrada

  • mijxel

    muy buen post muchas gracias, me ayudo de mucho

  • Luis

    Se quedo trabajo aqui, no encuentra la orden ???

    sudo su postgres -c “psql template1″

    template1″: “psql: orden no encontrada

  • http://teamcreativos.com Esteban

    Hola amigo muchas gracias por el aporte de verdad me ayudo bastante solo una cosa tienes un error.

    en lugar de (sudo apt-get install postgresql postgresq-client pgadmin3)
    debe ser :
    sudo apt-get install postgresql postgresql-client pgadmin3

    ha y en la parte donde se cambia el password en la consola de posgres ahi que limpiar el buffer antes ya que siguiendo los pasos no me ejecutaba el query.

    De cualquier manera muy bueno

  • gerMDZ

    no hay que olvidar el ” ; ” ni la comillas simples ‘

  • gerMDZ

    para salir tuve que marcar \q

  • Ruben Huanacuni

    Muchas gracias por este excelente tutorial, me estoy iniciando en el mundo linux y empeze con Ubuntu 9.10 Karmic Koala, me dedico a desarrollar sistemas con NetBeans, y para migrar todo o que hacia en Windows estaab buscando como instalar PostgreSQL, Java y NetBeans, tu ayuda me sirvio en gran medida, ahora paso a instalar Java, espero me vaya bien como lo fue con PostgreSQL.

  • zerothrge

    hahaha ke onda esta genial el articulo pero seria cool ke corrieras esta linea

    sudo apt-get install postgresql postgresq-client pgadmin3

    le falta la l en postgresq – client

    para los ke tokan linux por primera ves c pueden privar de un infarto jaja

  • http://www.alejandromeisel.tk Alejandro M.

    bueno relamente ties es problemas con las omillas y cosas por el estilo pero gracias….. Y buenpo y como exporto una base de datos?

    • http://blogjapon.com.ar perro

      ni idea….deje de usar postgres hace mucho :(

  • http://twitter.com/el_keogh Isaac Zepeda

    me ha servido de mucho este tutorial, gracias, funcionó perfecto en Ubuntu 11.04, solo algunas anotaciones

    sudo /etc/init.d/postgresql-8.4 restart

    en mi caso funcionó como

    sudo /etc/init.d/postgresql restart

    y faltaría poner que cuando quieres poner la versión es

    psql –version

    son doble guión medio, en el artículo parece que es un solo, saludos! :)

    • Angelissifontes7

       tengo un problemas con las secuencias en postgres 8.4 si alguien me puede ayudar,  no me autoincrementan el id cuando le doy enter.

  • Ensamblajefreedepc

    hola que tal tengo una duda con el arranque de posgretSQL  son los mismos comandos  en todas las veersiones xq realise este comando y no lo encontro sudo su postgres -c “psql template1     esta fue la respuesta               este es mi correo  ensamblajefreedepc@gmail.com 

  • Jaime Pineda

    bueno mompi… gracias… me sacaste de una!