PostgreSQL en servidor local con Wamp y Xampp

Comparto una guía completa de cómo integrar postgreSQL en tu servidor local usando Wamp o Xamp. Comparto algunos consejos o tipos que debes tener en cuenta.

Me costo al principio poder integrar esta base de datos de PostgreSQL con mi servidor local, pero pude lograrlo! y quiero hacer una guía donde les explico cómo integrarlo y que debemos tener en cuenta.

Esta guía esta hecha en el sistema operativo Windows. Suponemos que ya debes tener instalado wamp o xampp.

Instalar PostgreSQL

  1. Vamos al sitio web http://www.postgresql.org/ y descargamos la última versión, en el momento que se escribe este artículo estamos en la versión 10.5  http://www.postgresql.org/download/
  2. Abrimos el archivo ejecutable. Nos dan la bienvenida.
Inicio de instalación
  1. Después de dar clic en siguiente, seleccionamos el directorio donde vamos a guardar, por defecto quedará en “C:\Program Files\PostgreSQL\10”.
  2. La siguiente pantalla son los componentes, por defecto aparece todos seleccionados.
  3. Luego, nos pide la ruta donde se almacena los datos.
  4. Ahora, veremos una pantalla donde nos pide la contraseña de inicio de sesión, esta contraseña va ser la de nuestro usuario. En mi caso escribí “root”.
  5. En la siguiente pantalla pedirá el número de puerto. La idea es que no entre en conflicto con el puerto MySQL 3306. Así que utiliza el valor por defecto como 5432.
  6. Procedemos a modificar la configuración regional – dejamos la predeterminada -.
  7. La última pantalla, es un resumen de la instalación. Damos clic en siguiente y esperamos que instale. Finalmente damos clic en finalizar.
terminar instalación

Activar PG Admin 4

  • Para comprobar la instalación de PostgresSQL vamos a Inicio > Programas (Todas las aplicaciones) > PostgresSQL 10 > PgAdmin4
Activar la base de datos
  • En esta ventana, damos clic en el Servidor (Servers) (1) y doble clic sobre PostgresSQL 10(localhost:5432) o clic derecho conectar. Esto permitirá que se conecte al servidor.
PH Admin home
  • Ingresamos la contraseña, que escribimos en el momento de instalar.
  • Luego sale un mensaje de confirmación.

Habilitar extensiones de PostgresSQL

Este paso funciona igual tanto para Wamp o Xampp

  • Vamos al php.ini 
  • Descomentamos ( removemos el ; simbolo ) las siguientes lineas
    • extension=php_pdo_pgsql  o también extension=pdo_pgsql
    • extension=php_pgsql o también extension=pgsql

Nota: Para wamp, sucede algo curioso, algo que me puso a dar muchas vueltas, hay 2 archivos php.ini. Hay que modificar los dos.

C:\wamp\bin\apache\apache2.4.35\bin
C:\wamp\bin\php\php7.2.10

*  Esta es la ruta de mi PHP y Apache. Si tienes varias versiones de php, realiza el cambio en todos los php.ini

Después de hacer este ajuste, no olvides reiniciar tu Wamp o Xampp y !listo! debe funcionar ya tu PostgreSQL.

Para ver tu base de datos, recuerda abrir la aplicación pgAdmin4

Opcional: Habilitar PHPPgAdmin

¿Quieres ver tus bases de datos de PostgreSQL tal como lo hacías usando PHPMyAdmin de MySQL?

La documentación da lo siguiente detalles:

  • Supports: PostgreSQL 8.4.x, 9.0.x, 9.1.x, 9.2.x 
    7.4.x, 8.0.x, 8.1.x, 8.2.x, 8.3.x and 8.4.x are unofficially supported and not tested anymore.
  • Requires: PHP 5.0 or greater
  • Released: 14th April 2013

Cómo instalarlo

  • Descarga el descarga el .zip en la siguiente página.
  • Copialo en c:\wamp\apps\phppgadmin-5.1
  • Vamos a crear un acceso directo en la página principal de Wamp, para ello vamos a la carpeta c:\wamp\alias y crea este archivo nuevo phppgadmin.conf
  • Copia el siguiente código
Alias /phppgadmin "C:/wamp/apps/phppgadmin-5.1/"
<Directory "C:/wamp/apps/phppgadmin-5.1/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
<IfDefine APACHE24>
Require local
</IfDefine>
<IfDefine !APACHE24>
Order Deny,Allow Deny from all Allow from localhost ::1 127.0.0.1 </IfDefine>
php_admin_value upload_max_filesize 128M
php_admin_value post_max_size 128
php_admin_value max_execution_time 360
php_admin_value max_input_time 360
</Directory>

Ten en cuenta, que las dos primeras líneas, es la dirección donde guardamos nuestra carpeta.
En mi instalación es c:/wamp64/apps/phppgadmin-5.1/, verifica tu instalación.

  • Reinicia el Wamp Server
  • Ingresa http://localhost
  • En la parte inferior derecha, en la sección Your Aliases, encontrarás phppgadmin
  • Damos clic. allí
Localhost de Wampp

Aparece una sección donde escogemos el idioma y el tema, en la columna izquierda vemos el servidor PostgresSQL. Al dar clic allí, veremos una pantalla similar a esta:

Login PhpPGAdmin
  • Aquí escribimos nuestro usuario que por defecto es postgres
  • Contraseña de la instalación que es root   – en mi caso.
  • Clic en login y accedemos a nuestro panel de control de la base de datos.
  • Si tienes problemas con el logueo, puedes hacer lo siguiente:
    • Vamos ala carpeta C:\wamp\apps\phppgadmin-5.1\conf y buscamos el archivo config.inc.php
    • Buscamos la linea $conf[‘extra_login_security’] y cambiamos su valor por false.

Nota: La documentación dice:

Si extra_login_security es true, entonces el inicio de sesión a través de phpPgAdmin sin contraseña o ciertos nombres de usuario (pgsql, postgres, root, administrator) serán negados.

Sólo configurar false una vez que haya leído las preguntas frecuentes y entender cómo cambiar pg_hba.conf de PostgreSQL para permitir conexiones locales usando una contraseña.

¿No te funciona? Intenta esto:

  1. En php.ini, asegúrese que extension_dir apunta al directorio adecuado. Debe ser una carpeta llamada extensiones o ext o similares dentro de su carpeta de .HP
  2. Por último, copie libpq.dll desde C:\wamp\bin\php\php5 * \ en C:\Wamp\bin\apache*\bin y reiniciar todos los servicios a través de la de WampServer o Xampp.

Conclusión

Hasta aquí la explicación  de cómo integrar PostgreSQL con Wamp o Xampp, trate de ser lo más claro posible.

Si tienes algún problema o encontraste otra manera de hacerlo, puedes escribirme usando el sistema de comentarios. 

Si te fue útil esta guía:

  • Deja tu comentario de agradecimiento
  • Comparte este página en tus redes sociales
  • Haz mención de @beecreativos y @juksoto 
Por favor espera...