A partir de la versión 8.4 de PostgreSQL, la empresa EnterpriseDB ha puesto a disposición de la comunidad un instalador fácil (lo que ellos denominan 'one click' installer). Este programa instalador está disponible para Linux, Windows y MacOS X y está pensado para hacerle la vida más fácil al usuario que quiere empezar a utilizar PostgreSQL e instalarlo de manera fácil y rápida. Este instalador provee por defecto, la versión libre de la comunidad del servidor PostgreSQL, los programas clientes por defecto y el cliente gráfico PgAdminIII.
Este artículo está orientado a usuarios principiantes. Si quereis hacer un uso avanzado de PostgreSQL tendreis de todas maneras que leer documentación y aprender configuraciones avanzadas del mismo.
Los métodos de instalación tradicionales, compilando, instalando binarios ó instalando los paquetes que se distribuyen con las diferentes distribuciones de Linux, siguen siendo totalmente válidos y recomendables en ciertos casos. Hay que recalcar que este instalador es totalmente independiente del sistema operativo que estemos usando, ya sea Windows, MacOS X ó algunas de las muchas distribuciones de Linux que existen. El instalador tampoco tiene nada que ver con los paquetes (rmp,deb,etc) de programas que se distribuyen con las distribuciones.
A continuación vamos a explicar como seria el proceso de instalación de PostgreSQL con este instalador. Independientemente del sistema operativo usado, deberia de funcionar de la misma manera. Para este artículo hemos comprobado el funcionamiento del instalador en Ubuntu 8.04 y en Windows XP SP3 y su funcionamiento ha sido similar en los dos sistemas operativos.
Lo primero que tenemos que hacer es descargar la versión del programa de instalación que corresponda con nuestro sistema. En nuestro caso nos descargamos desde http://www.enterprisedb.com/products/pgdownload.do la versión libre para la comunidad '8.4.1-1' para Linux x86-32 y Windows
Una vez descargado lo tendremos que ejecutar como administrador en nuestro sistema. 'root' en linux y 'usuario administrador' en Windows.
En mi caso el programa se grabo sin permisos de ejecución en Linux, asi que tuve que definir este permiso antes de arrancar el programa:
root@linux:/tmp# chmod +x postgresql-8.4.1-1-linux.bin root@linux:/tmp# ./postgresql-8.4.1-1-linux.bin
En Windows XP, basta con pulsar en el fichero exe que nos hemos descargado para empezar a ejecutar este programa de instalación.
La primera pantalla que se nos muestra es la bienvenida al instalador de PostgreSQL. A partir de ahora tendremos que pulsar "Next" cada vez que queramos avanzar al siguiente paso.
En el siguiente paso tendremos que definir el directorio donde vamos a instalar todos los programas que vienen con esta versión de PostgreSQL. En nuestro caso, utilizaremos el valor por defecto que el programa nos sugiere. /opt/PostgreSQL/8.4 en linux y c:\\Program Files\PostgreSQL\8.4 en Windows XP.
Una vez que hemos escrito el directorio que queremos utilizar para instalar el programa, pasamos al siguiente paso. En este paso tenemos que definir el directorio de datos en donde se crearán nuestras bases de datos. De nuevo, en nuestro caso utilizaremos el valor por defecto que el programa nos sugiere. /opt/PostgreSQL/8.4/data en linux y c:\\Program Files\PostgreSQL\8.4\data en Windows XP.
Pasamos al siguiente paso. En este paso tenemos que definir una clave de acceso para el usuario administrador de nuestra base de datos PostgreSQL. No olvidar esta clave, si no quereis tener problemas más adelante. En Windows XP la clave definida en este paso será tambien la clave que se utilizará para la cuenta de servicio 'postgres' que se creará durante la instalación. Si esta cuenta ya existe, tendremos que utilizar la clave que dicha cuenta tiene asignada.
Más adelante podremos cambiar, si queremos, la clave del usuario administrador (postgres) de la base de datos. Esta clave es totalmente independiente de la clave de la cuenta de servicio 'postgres' en el sistema operativo.
Pasamos al siguiente paso. En este paso tendremos que especificar el puerto que PostgreSQL utilizará para escuchar por conexiones. En nuestro caso dejamos el valor por defecto, 5432.
Una vez que hemos terminado con los pasos básicos, el programa entra en la sección de opciones avanzadas. En este paso tenemos que decidir que 'locale' queremos utilizar y si queremos instalar PL/pgSQL en la base de datos template1. Si no sabeis que responder, os recomiendo elegir "Locale: C" e instalar PL/pgSQL en template1. (template1 es una base de datos por defecto en PostgreSQL que se puede utilizar como plantilla cuando creamos bases de datos. Todo lo que se instala/crea en template1, estará disponible en todas las bases de datos que usen template1 como plantilla)
Una vez que hemos terminado con todos los pasos de configuración, el programa nos informa que está listo para empezar a instalar e inicializar nuestra instalación.
Pulsamos por última vez "Next" y esperamos a que el programa termine de instalar todo.
Una vez terminada la instalación, podremos salir del instalador pulsando "Finish". En este último paso el instalador nos da la opción de arrancar automáticamente un programa llamado "Stack Builder". Este programa puede ser usado para instalar diversos programas adicionales, tanto programas libres como algunos distribuidos por EnterpriseDB. En este artículo no vamos a ver nada relacionado con "Stack Builder" y por eso borramos la elección de arrancarlo automáticamente antes de pulsar "Finish".
Si todo el proceso de instalación ha salido bien tendriamos que tener un nuevo menu en nuestro sistema. En este menu podremos acceder a la documentación de PostgreSQL, a diversos programas clientes, arrancar y apagar la base de datos, etc.
Los menus se ven asi en Linux y en Windows XP.
Los clientes (psql y PgAdminIII) en Linux y en Windows XP se acceden de la misma manera y tienen el mismo aspecto.
Bueno esto es todo en este artículo. Más fácil de instalar es imposible y ya no teneis excusa para no instalar PostgreSQL en vuestro ordenador. Que lo disfruteis.
Más información sobre el tema:
http://www.enterprisedb.com/products/pgdownload.do
http://www.enterprisedb.com/learning/pginst_guide.do
Comentarios
Genial mano
Mié, 28/10/2009 - 21:33 — AnónimoMe salvas compadre con este tutorial
alguna configuracion en win Xp??
Mar, 03/11/2009 - 05:59 — Anónimoqiero sber si existe alguna configuracion q alla q hacer en windws Xp para correr el postgresql
Problemas al finalizar la instalacion
Mar, 03/11/2009 - 07:10 — AnónimoTengo un problema cuando termina la instalación me sale un aviso que dice "Un error no fatal ocurrió durante la inicialización del clúster
No estoy seguro pero creo que debido a eso el server no arranca dice que no se puede escuchar. Soy nuevo en esto y si esto es por alguna bobada perdón por la pregunta
¿Qué sistema utilizas, Linux,
Mar, 03/11/2009 - 22:13 — webmaster¿Qué sistema utilizas, Linux, Mac OSX ó Windows?
Comprueba el fichero /tmp/install-postgresql.log (linux/Mac) ó %TEMP%\install-postgresql.log (Windows) para ver si contiene una explicación del error que has tenido.
--
Rafael Martinez
Webmaster
Problemita
Mié, 04/11/2009 - 04:52 — AnónimoOye gracias por tu interés, la verdad no se que pasaba, el sistema operativo era windows XP pero ahora lo instale en una maquina virtual con windows server 03 y funciono normalmente(corrió la base dedatos por defecto)
Después probe con windows XP pero en otro pc virtual y funciono.
Al final pude instalar bn el software pero = no puedo arrancar el server desde mi pc físico con XP y ni siquiera puedo llamar al server de la maquina virtual, con windows server 03, donde tengo la base de datos, ese si corre bn(lo tengo en conexión por puente)
Intente poner lo más permisible posible a los usuarios pero nada
Frankofe
apprentice
Re: Problemita
Mié, 04/11/2009 - 14:47 — webmasterIntente poner lo más permisible posible a los usuarios pero nada
Como te comente en el comentario anterior, ¿qué información tienes en el fichero install-postgresql.log en el ordenador con problemas?
--
Rafael Martinez
Webmaster
Problemas con la instalación
Lun, 16/11/2009 - 18:11 — AnónimoMira necesito instalar postgres en xp servipack 3, y baje el instalador y todo bien, pero cuando voy a intalarlo, paso las dos estapas de elegir el de lugar instalacion y donde se crearan las bases de datos, hasta ahi todo bien, pero cuando voy a colocar alguna clave, me tira que la clave es incorrecta, y no tengo instalado postgres, por lo que no se por que me tira ese error, eso si tengo xampp, intalados como servidor php, ayuda por favor.
Re: Problemas con la instalación
Mar, 17/11/2009 - 09:17 — Anónimoxampp utiliza mysql y no deberia de interferir en la instalación de PostgreSQL, no creo que sea la causa detu problema.
El fallo que te da puede ser porque:
¿Estas seguro que no existe una cuenta 'postgres' en el sistema?
¿Has intentado instalar PostgreSQL en el pasado en esta maquina? ¿quizas un intento fallido de instalacion en el que el paso en el que se crea la cuenta 'postgres' en el sistema operativo se llego a ejecutar?
¿Usas algun tipo de caracter especial en la clave que intentas definir?
Ya contaras
Soy nuevo en esto.
Mar, 24/11/2009 - 01:28 — AnónimoBuenas.
Para utilizar posgreSQl en un programa el cual sera comercializado,
¿Es necesario PAGAR ALGUNA LICENCIA?
Licencia BSD
Mar, 24/11/2009 - 07:36 — AnónimoPostgreSQL se distribuye bajo licencia BSD. Esto significa que puedes utilizarlo en un programa que sea comercializado sin problemas y sin tener que pagar licencias a nadie.
La licencia en ingles la tienes en:
http://www.postgresql.org/about/licence
Problema con contraseña
Sáb, 05/12/2009 - 03:37 — AnónimoHOla!
Me sucede el mismo error con la contraseña, la pc la utilizó otra persona antes y no estoy segura si existe o no una cuenta postgres en el sistema, ¿cómo podría averiguarlo?
Gracias desde ya!
RE: Problema con la contraseña
Sáb, 05/12/2009 - 03:59 — AnónimoMe respondo yo misma mi post, pues buscando encontré esta solución que me salvó la vida.
Mi problema era que en la pc se había hecho una instalación fallida, entonces después no me aceptaba la contraseña, porque la cuenta ya existía.
Como dije, buscando encontré esta solución, la comparto por si a alguien más le sirve:
"Para desinstalar por completo el postgres de windows y luego hacer una instalacion limpia, hacer esto: 1) panel de control/agregar o quitar programas (ya saben el resto) 2)luego en ejecutar escribir lo siguiente: net user postgres /del. El segundo paso es primordial. Si no, despues no podras volver a instalar el postgresql."
Saludos!
PROBLEMA INSTALACIÓN
Mié, 16/12/2009 - 01:15 — AnónimoHola. Necesito ayuda por favor. No encuentro en internet información completa de mi fallo. Casi al terminar la instalación me aparece el mensaje "Un error no fatal ocurrió durante la inicialización del clúster..." He revisado el log y he probado desinstalando e instalando varias veces variando la configuración local pero siempre me sale lo mismo. Pego el log de la carpeta TEMP para más información. Muchas gracias.
Ensuring we can write to the data directory (using cacls):
"cacls" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
Failed to ensure the data directory is accessible (C:\Archivos de programa\PostgreSQL\8.4\data)
Los archivos de este cluster ser n de propiedad del usuario ®Administrador¯.
Este usuario tambi‚n debe ser quien ejecute el proceso servidor.
El cluster ser inicializado con configuraci¢n local Spanish_Honduras.1252.
La configuraci¢n de b£squeda en texto ha sido definida a ®spanish¯.
corrigiendo permisos en el directorio existente C:/Archivos de programa/PostgreSQL/8.4/data ... hecho
creando subdirectorios ... hecho
seleccionando el valor para max_connections ... 100
seleccionando el valor para shared_buffers ... 32MB
creando archivos de configuraci¢n ... hecho
creando base de datos template1 en C:/Archivos de programa/PostgreSQL/8.4/data/base/1 ... hecho
inicializando pg_authid ... hecho
estableciendo contrase¤a ... hecho
inicializando dependencias ... hecho
creando las vistas de sistema ... hecho
cargando las descripciones de los objetos del sistema ... hecho
creando conversiones ... hecho
creando directorios ... hecho
estableciendo privilegios en objetos predefinidos ... hecho
creando el esquema de informaci¢n ... hecho
haciendo vacuum a la base de datos template1 ... hecho
copiando template1 a template0 ... hecho
copiando template1 a postgres ... hecho
Completado. Puede iniciar el servidor de bases de datos usando:
"C:\Archivos de programa\PostgreSQL\8.4\bin\postgres" -D "C:/Archivos de programa/PostgreSQL/8.4/data"
o
"C:\Archivos de programa\PostgreSQL\8.4\bin\pg_ctl" -D "C:/Archivos de programa/PostgreSQL/8.4/data" -l archivo_de_registro start
Granting service account access to the data directory (using cacls):
"cacls" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
Failed to grant service account access to the data directory (C:\Archivos de programa\PostgreSQL\8.4\data)
initcluster.vbs ran to completion
Script stderr:
Program ended with an error exit code
Error running cscript //NoLogo "C:\Archivos de programa\PostgreSQL\8.4/installer/server/initcluster.vbs" "postgres" "postgres" "rigodon" "C:\Archivos de programa\PostgreSQL\8.4" "C:\Archivos de programa\PostgreSQL\8.4\data" 5432 "DEFAULT" : Program ended with an error exit code
Configurando el inicio del servidor de base de datos...
Executing cscript //NoLogo "C:\Archivos de programa\PostgreSQL\8.4\installer\server\startupcfg.vbs" 8.4 "postgres" "rigodon" "C:\Archivos de programa\PostgreSQL\8.4" "C:\Archivos de programa\PostgreSQL\8.4\data"
Script exit code: 0
Script output:
startupcfg.vbs ran to completion
Script stderr:
Creando los accesos directos en el menú...
Executing cscript //NoLogo "C:\Archivos de programa\PostgreSQL\8.4\installer\server\createshortcuts.vbs" 8.4 "postgres" 5432 "PostgreSQL 8.4" "C:\Archivos de programa\PostgreSQL\8.4" "C:\Archivos de programa\PostgreSQL\8.4\data"
Script exit code: 0
Script output:
createshortcuts.vbs ran to completion
Script stderr:
Iniciando el servidor de bases de datos...
Executing cscript //NoLogo "C:\Archivos de programa\PostgreSQL\8.4\installer\server\startserver.vbs" 8.4
Script exit code: 0
Script output:
Starting postgresql-8.4
Service postgresql-8.4 started successfully
startserver.vbs ran to completion
Script stderr:
Cargando módulos SQL adicionales...
Executing cscript //NoLogo "C:\Archivos de programa\PostgreSQL\8.4\installer\server\loadmodules.vbs" "postgres" "rigodon" "C:\Archivos de programa\PostgreSQL\8.4" "C:\Archivos de programa\PostgreSQL\8.4\data" 5432 "1"
Script exit code: 0
Script output:
Installing pl/pgsql in the template1 databases...
psql: no se pudo conectar con el servidor: Connection refused (0x0000274D/10061)
¨Est el servidor en ejecuci¢n en el servidor ®???¯ y aceptando
conexiones TCP/IP en el puerto 5432?
Installing the adminpack module in the postgres database...
psql: no se pudo conectar con el servidor: Connection refused (0x0000274D/10061)
¨Est el servidor en ejecuci¢n en el servidor ®???¯ y aceptando
conexiones TCP/IP en el puerto 5432?
loadmodules.vbs ran to completion
Script stderr:
[17:57:42] Write the data directory to the ini file...
[17:57:42] Write the port number, service ID, locale and superuser to the ini file...
[17:57:42] Write Superuser to ini file and windows registry...
[17:57:42] Write Service Account to ini file and windows registry...
[17:57:42] Write the server description to the ini file...
[17:57:42] Write the server branding to the ini file...
[17:57:42] Write the 'whether stack-builder is disabled or not' to the ini file...
[17:57:42] Finished running post-installation/upgrade tasks.
Creando el desinstalador
Creando el desinstalador 25%
Creando el desinstalador 50%
Creando el desinstalador 75%
Creando el desinstalador 100%
Instalación completada
Log finished 12/15/09 at 17:57:47
Excelente!
Mié, 27/01/2010 - 15:54 — AnónimoMuchas gracias por el tutorial, esta muy comprensible. INstalare ahora postgresql en windows sp3 y ya te contare.
COMO LLENAR LA BASE DE DATOS???
Mar, 09/03/2010 - 20:03 — AnónimoINSTALE POSTGRES Y CREE LAS TABLAS, PERO NO SE COMO LLENARLAS??
GRACIAS POR LA AYUDA DE ANTEMANO
Enviar nuevo comentario