Volver al blog
4 de octubre de 2026 · 7 min de lectura · Power BI, PostgreSQL

Cómo conectar Power BI a PostgreSQL paso a paso

PostgreSQL es una de las bases de datos más usadas para sistemas internos, y Power BI es la herramienta natural para convertir esos datos en dashboards. Conectarlos es sencillo cuando todo sale bien, pero hay varios puntos donde la gente se atora: el tipo de conexión, los permisos del usuario, el cifrado SSL y la actualización en el Servicio de Power BI. Esta guía recorre el proceso completo y las decisiones que conviene tomar desde el principio.

Antes de abrir Power BI: prepara un usuario de solo lectura

El error más común es conectar el reporte con el usuario administrador de la base. Un dashboard solo necesita leer, así que crea un rol dedicado con permisos mínimos. Si el reporte se comparte o la credencial se filtra, el daño posible es mucho menor.

CREATE ROLE powerbi_lector LOGIN PASSWORD 'una_contraseña_larga_y_unica';

GRANT CONNECT ON DATABASE mi_base TO powerbi_lector;
GRANT USAGE ON SCHEMA reporting TO powerbi_lector;
GRANT SELECT ON ALL TABLES IN SCHEMA reporting TO powerbi_lector;

-- Para que las tablas y vistas nuevas también queden cubiertas
ALTER DEFAULT PRIVILEGES IN SCHEMA reporting
    GRANT SELECT ON TABLES TO powerbi_lector;

Expón vistas, no tablas crudas

En lugar de dar acceso directo a las tablas transaccionales, crea un esquema aparte (aquí reporting) con vistas pensadas para BI. Así decides qué columnas se ven, evitas exponer datos sensibles y puedes cambiar la estructura interna sin romper los reportes.

CREATE VIEW reporting.ventas_mensuales AS
SELECT
    date_trunc('month', v.fecha)::date AS mes,
    c.nombre                           AS cliente,
    SUM(v.monto)                       AS monto_total,
    COUNT(*)                           AS num_operaciones
FROM public.ventas v
JOIN public.clientes c ON c.id = v.cliente_id
GROUP BY 1, 2;

Conectar desde Power BI Desktop

  1. En la cinta de inicio, elige Obtener datos y busca Base de datos PostgreSQL.
  2. En Servidor escribe el host. Si el puerto no es el 5432 predeterminado, usa el formato servidor:puerto (por ejemplo, 192.168.1.20:5434).
  3. En Base de datos escribe el nombre exacto de la base.
  4. Elige el modo de conectividad (ver la siguiente sección) y acepta.
  5. En la pestaña Base de datos de la ventana de credenciales, ingresa el usuario powerbi_lector y su contraseña. No uses la pestaña de Windows para PostgreSQL con usuario y contraseña propios.
  6. En el navegador selecciona las vistas del esquema reporting y carga o transforma los datos.

Dependiendo de la versión de Power BI Desktop, puede pedirte que instales el proveedor Npgsql antes de conectar. Si aparece ese aviso, instala la versión que indica el mensaje, reinicia Power BI Desktop y vuelve a intentarlo.

Importar o DirectQuery: cuál elegir

Esta es la decisión que más afecta la experiencia del reporte.

Si importas, reduce el tamaño del modelo trayendo solo las columnas y filas que el reporte necesita. Una vista agregada, como la del ejemplo anterior, suele ser mejor que importar millones de filas de detalle que nadie consulta.

Consulta SQL nativa (opcional)

En Opciones avanzadas del conector puedes escribir una instrucción SQL. Es útil para traer un resultado ya filtrado, pero con ella Power Query pierde la capacidad de delegar pasos posteriores a la base de datos (query folding). Si puedes resolver lo mismo con una vista, hazlo ahí: queda versionada en la base y es reutilizable.

SELECT mes, cliente, monto_total
FROM reporting.ventas_mensuales
WHERE mes >= date_trunc('year', current_date) - interval '2 years'

Errores comunes y cómo resolverlos

«No se puede conectar» o tiempo de espera agotado

Casi siempre es red, no Power BI. Verifica que el servidor sea alcanzable desde tu equipo, que el puerto esté abierto en el firewall y que PostgreSQL acepte conexiones remotas: revisa listen_addresses en postgresql.conf y que pg_hba.conf tenga una regla para tu red y el usuario que usas.

Error de certificado o de cifrado SSL

Power BI intenta cifrar la conexión. Si el servidor no tiene SSL configurado, o su certificado no es de una autoridad que tu equipo reconozca, la conexión falla. Lo correcto es habilitar SSL en PostgreSQL con un certificado válido. Desactivar el cifrado en la ventana del conector solo es aceptable dentro de una red privada de confianza, nunca en una conexión por internet.

«Autenticación fallida»

Confirma que estás en la pestaña Base de datos y no en Windows, que el rol tiene LOGIN y que pg_hba.conf usa un método compatible (scram-sha-256 o md5). Si cambiaste la contraseña, borra las credenciales guardadas desde Archivo > Opciones y configuración > Configuración de origen de datos.

Columnas o vistas que no aparecen

Suele ser un tema de permisos: el rol necesita USAGE sobre el esquema y SELECT sobre cada vista o tabla. Las vistas creadas después del GRANT inicial no se cubren a menos que hayas definido ALTER DEFAULT PRIVILEGES.

Publicar y actualizar en el Servicio de Power BI

Un reporte que funciona en tu escritorio no se actualiza solo en la nube. Si la base de datos está en tu red interna o en un servidor sin acceso público, el Servicio de Power BI no puede alcanzarla por sí mismo. Necesitas una puerta de enlace de datos local (on-premises data gateway) instalada en un equipo o servidor que sí vea la base y esté encendido cuando se programe la actualización.

  1. Instala la puerta de enlace en un equipo que tenga acceso a PostgreSQL y inicia sesión con tu cuenta.
  2. En el Servicio de Power BI, abre la configuración del conjunto de datos y asocia el origen de datos con la puerta de enlace.
  3. Ingresa de nuevo las credenciales del rol powerbi_lector.
  4. Configura la actualización programada con la frecuencia que el negocio realmente necesita. Actualizar cada hora lo que se consulta una vez al día solo carga a la base sin dar valor.

Si tu PostgreSQL ya está en un servicio en la nube con dirección pública y SSL, es posible conectar sin puerta de enlace, siempre que el firewall de ese servicio permita las conexiones del Servicio de Power BI.

Checklist rápido

Con esta base, el siguiente paso es cuidar el rendimiento tanto en el origen como en el modelo. Ahí ayudan optimizar las consultas SQL que alimentan el reporte y aplicar buenas prácticas de DAX en las medidas.

¿Necesitas conectar tus datos a un dashboard?

Diseño dashboards en Power BI sobre bases PostgreSQL y SQL, desde el modelo de datos hasta la actualización automática.

Solicitar una propuesta Ver el servicio de dashboards