Con 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
Las razones por la que sigo o seguia usando MySQL son 2:
- Casi todos mis proyectos que hago con KumbiaPHP framework los almacenaba en godaddy o hosting que solo tienen MySQL como motor base de datos.
- 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 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 :oops: 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
Interesante buen articulo, ya lo sabia, pero de todos modos si hubiera conocido antes esto me hubiera ahorrado tiempo :up:
si yo tambien…mucho tiempo :-o
gracias por comentar
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!
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 :)
Saludos es buen tutorial y me ahorra trabajao gracias, si sabes donde guarda los archivos de la base de datos pudieras comentarlo.
:up:
Muy bien todo a la perfeccion
Se quedo trabajo aqui, no encuentra la orden ???
sudo su postgres -c “psql template1″
template1″: “psql: orden no encontrada
muy buen post muchas gracias, me ayudo de mucho
Se quedo trabajo aqui, no encuentra la orden ???
sudo su postgres -c “psql template1″
template1″: “psql: orden no encontrada
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
no hay que olvidar el » ; » ni la comillas simples ‘
para salir tuve que marcar \q
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.
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
bueno relamente ties es problemas con las omillas y cosas por el estilo pero gracias….. Y buenpo y como exporto una base de datos?
ni idea….deje de usar postgres hace mucho :(
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! :)
tengo un problemas con las secuencias en postgres 8.4 si alguien me puede ayudar, no me autoincrementan el id cuando le doy enter.
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
bueno mompi… gracias… me sacaste de una!