Tipos de Bases de Datos - Guías de Conexión Detalladas
Esta guía proporciona instrucciones detalladas para conectarse a cada tipo de base de datos compatible, incluyendo dónde encontrar las credenciales y los requisitos de configuración específicos.
MySQL y MariaDB
MySQL y MariaDB son sistemas de gestión de bases de datos relacionales de código abierto muy populares. Comparten los mismos parámetros de conexión.
Parámetros de Conexión
- Host: La dirección IP o el nombre de host de tu servidor MySQL
- Puerto: El predeterminado es 3306, pero puede variar
- Nombre de la Base de Datos: La base de datos específica a la que quieres conectarte
- Nombre de Usuario: Tu nombre de usuario de MySQL
- Contraseña: Tu contraseña de MySQL
Dónde Encontrar las Credenciales
- Alojamiento propio: Revisa tus archivos de configuración de MySQL o contacta a tu administrador de sistemas
- cPanel/Alojamiento compartido: Disponible en tu panel de control de alojamiento en "Bases de datos MySQL"
- AWS RDS: Disponible en la consola de AWS RDS
- Google Cloud SQL: Disponible en la Consola de Google Cloud
- Azure Database: Disponible en el portal de Azure
Problemas Comunes de Conexión
- Asegúrate de que tu base de datos permita conexiones externas
- Revisa la configuración del firewall en el puerto 3306
- Verifica que el usuario tenga permiso para conectarse de forma remota
- Para servicios en la nube, asegúrate de que tu IP esté en la lista blanca
Ejemplo de Configuración
Host: mysql.example.com
Puerto: 3306
Base de Datos: mi_base_de_datos
Nombre de Usuario: usuario_bd
Contraseña: contrasena_segura
PostgreSQL
PostgreSQL es un potente sistema de base de datos objeto-relacional de código abierto.
Parámetros de Conexión
- Host: La dirección IP o el nombre de host de tu servidor PostgreSQL
- Puerto: El predeterminado es 5432
- Nombre de la Base de Datos: La base de datos específica a la que quieres conectarte
- Nombre de Usuario: Tu nombre de usuario de PostgreSQL
- Contraseña: Tu contraseña de PostgreSQL
Dónde Encontrar las Credenciales
- Alojamiento propio: Revisa los archivos pg_hba.conf y postgresql.conf
- Heroku Postgres: Disponible en la configuración de tu aplicación → Variables de Configuración
- AWS RDS: Disponible en la consola de AWS RDS
- Google Cloud SQL: Disponible en la Consola de Google Cloud
- Azure Database: Disponible en el portal de Azure
- DigitalOcean: Disponible en tu panel de control de DigitalOcean
Problemas Comunes de Conexión
- Revisa pg_hba.conf para las conexiones permitidas
- Verifica que postgresql.conf permita conexiones en la interfaz correcta
- Asegúrate de que el usuario tenga el privilegio CONNECT en la base de datos
- Revisa la configuración del firewall en el puerto 5432
Ejemplo de Configuración
Host: postgres.example.com
Puerto: 5432
Base de Datos: mi_base_de_datos
Nombre de Usuario: usuario_postgres
Contraseña: contrasena_segura
Google BigQuery
BigQuery es el almacén de datos totalmente gestionado de Google para análisis.
Requisitos de Conexión
- Proyecto de Google Cloud con la API de BigQuery habilitada
- Cuenta de Servicio con los permisos adecuados
- Archivo de clave JSON de la Cuenta de Servicio
Configuración del Acceso
-
Crear un Proyecto de Google Cloud:
-
Habilitar la API de BigQuery:
- Navega a APIs y Servicios → Biblioteca
- Busca "API de BigQuery"
- Haz clic en "Habilitar"
-
Crear Cuenta de Servicio:
- Ve a IAM y Administración → Cuentas de Servicio
- Haz clic en "Crear Cuenta de Servicio"
- Proporciona un nombre y una descripción
-
Asignar Permisos:
- BigQuery Data Viewer (mínimo)
- BigQuery Job User (para ejecutar consultas)
- Roles adicionales según sea necesario para tus datos
-
Generar Archivo de Clave:
- Haz clic en tu cuenta de servicio
- Ve a la pestaña Claves → Agregar Clave → Crear Nueva Clave
- Elige el formato JSON y descarga
Parámetros de Conexión
- ID del Proyecto: Tu ID de Proyecto de Google Cloud
- JSON de la Cuenta de Servicio: Contenido del archivo JSON descargado
- Conjunto de Datos (opcional): Conjunto de datos predeterminado a usar
Ejemplo de Configuración
ID del Proyecto: mi-proyecto-bigquery-123456
JSON de la Cuenta de Servicio: {
"type": "service_account",
"project_id": "mi-proyecto-bigquery-123456",
...
}
Amazon Redshift
Redshift es el servicio de almacén de datos basado en la nube de Amazon.
Parámetros de Conexión
- Host: El punto de conexión de tu clúster de Redshift
- Puerto: El predeterminado es 5439
- Nombre de la Base de Datos: El nombre de la base de datos en tu clúster
- Nombre de Usuario: Tu nombre de usuario de Redshift
- Contraseña: Tu contraseña de Redshift
Dónde Encontrar las Credenciales
-
Consola de AWS:
- Navega a Amazon Redshift
- Selecciona tu clúster
- Los detalles de conexión se muestran en las propiedades del clúster
-
Formato del Punto de Conexión: nombre-cluster.identificador.region.redshift.amazonaws.com
Configuración del Acceso
- Asegúrate de que el clúster sea accesible públicamente (si te conectas desde fuera de AWS)
- Configura los grupos de seguridad para permitir conexiones entrantes
- Crea usuarios de base de datos con los permisos adecuados
Problemas Comunes de Conexión
- Revisa las reglas de entrada del grupo de seguridad para el puerto 5439
- Verifica que el clúster esté en estado "disponible"
- Asegúrate de que el usuario tenga el privilegio CONNECT en la base de datos
- Revisa las configuraciones de VPC y subred
Ejemplo de Configuración
Host: mi-cluster.abc123def456.us-west-2.redshift.amazonaws.com
Puerto: 5439
Base de Datos: analytics
Nombre de Usuario: usuario_redshift
Contraseña: contrasena_segura
Azure SQL Database
Azure SQL Database es el servicio de base de datos SQL basado en la nube de Microsoft.
Parámetros de Conexión
- Servidor: El nombre de tu servidor Azure SQL
- Nombre de la Base de Datos: El nombre específico de la base de datos
- Nombre de Usuario: Tu nombre de usuario de autenticación SQL
- Contraseña: Tu contraseña de autenticación SQL
Dónde Encontrar las Credenciales
-
Portal de Azure:
- Navega a Bases de datos SQL
- Selecciona tu base de datos
- Haz clic en "Cadenas de conexión" para ver todos los detalles
-
Formato del Servidor: nombre-servidor.database.windows.net
Opciones de Autenticación
- Autenticación SQL: Nombre de usuario/contraseña (recomendado para aplicaciones)
- Autenticación de Azure AD: Usa Azure Active Directory (para acceso de usuarios)
Configuración del Acceso
- Configura las reglas del firewall para permitir tu dirección IP
- Asegúrate de que la Autenticación SQL esté habilitada
- Crea usuarios de base de datos con los permisos adecuados
Problemas Comunes de Conexión
- Revisa la configuración del firewall de Azure SQL
- Verifica que la Autenticación SQL esté habilitada
- Asegúrate de que el usuario tenga como mínimo el permiso db_datareader
- Revisa el formato de la cadena de conexión
Ejemplo de Configuración
Host: miservidor.database.windows.net
Puerto: 1433
Base de Datos: mibasededatos
Nombre de Usuario: sqladmin
Contraseña: contrasena_segura
Google Sheets
La integración con Google Sheets te permite conectarte a hojas de cálculo en tu Google Drive como fuentes de datos.
Requisitos de Conexión
- Cuenta de Google con acceso a Google Sheets
- Autenticación OAuth 2.0 a través de Google
- Acceso a las API de Google Sheets y Google Drive
Configuración del Acceso
-
Proceso de Autenticación:
- Haz clic en "Conectar con Google" al crear la conexión
- Inicia sesión en tu cuenta de Google
- Otorga permiso para acceder a tus Google Sheets
-
Permisos Requeridos:
- Acceso de lectura a tus Google Sheets
- Acceso de lectura a tu Google Drive (para listar hojas de cálculo)
Cómo Funciona
- Hojas de Cálculo como Fuentes de Datos: Cada hoja de cálculo en tu Google Drive se convierte en una fuente de datos disponible
- Hojas como Tablas de Datos: Cada hoja dentro de una hoja de cálculo proporciona datos brutos
- Primera Fila como Encabezados: La primera fila de cada hoja se trata como encabezados de columna
- Tipos de Datos: Todos los datos se importan como texto por defecto
Método de Acceso a Datos
A diferencia de las bases de datos tradicionales, Google Sheets no admite consultas SQL. En su lugar:
- Importación de Datos Crudos: PyQueryHub importa los datos completos de la hoja
- Filtrado a Nivel de Gráfico: Todo el filtrado, ordenación y agregación ocurre en la configuración del gráfico
- Sin Soporte SQL: No puedes escribir sentencias SELECT o cláusulas WHERE
- Selección de Hoja: Elige qué hoja de cálculo y hoja usar como tu fuente de datos
Operaciones Soportadas
- Acceso de solo lectura: Solo puedes leer datos, no modificarlos
- Datos en tiempo real: Los datos se obtienen directamente de Google Sheets cuando se ejecutan los informes
- Detección automática de esquema: Los nombres de las columnas se detectan desde la primera fila
- Filtrado basado en gráficos: Usa los controles del gráfico para filtrar y agregar datos
Limitaciones
- Sin consultas SQL: No se pueden usar WHERE, GROUP BY, JOIN u otras operaciones SQL
- Procesamiento solo a nivel de gráfico: Toda la manipulación de datos ocurre en la configuración del gráfico
- Acceso de solo lectura: Sin operaciones INSERT/UPDATE/DELETE
- Limitado a tu cuenta de Google: Solo hojas de cálculo a las que tienes acceso
- Rendimiento: Depende del tamaño de la hoja de cálculo y los límites de la API de Google
- Tipos de datos: Todos importados como texto (el formato se aplica en los gráficos)
Mejores Prácticas
- Mantén los encabezados de columna en la primera fila
- Usa un formato de datos consistente dentro de las columnas
- Evita caracteres especiales en los nombres de las hojas
- Considera el tamaño de los datos: las hojas grandes pueden afectar el rendimiento
- Estructura los datos apropiadamente ya que no puedes usar SQL para remodelarlos
- Usa múltiples hojas para diferentes entidades de datos en lugar de consultas complejas
Ejemplo de Flujo de Trabajo
- Fuente de Datos: Elige la hoja de cálculo "Datos de Ventas 2024"
- Selección de Hoja: Selecciona la hoja "Resultados T1"
- Creación de Gráficos: Crea gráficos que filtren/agreguen los datos brutos de la hoja
- Sin SQL: Todo el procesamiento ocurre a través de la configuración del gráfico, no de las consultas
Solución de Problemas
- Autenticación expirada: Vuelve a autenticarte con Google
- Hoja de cálculo no encontrada: Revisa la ortografía y asegúrate de que exista en tu Drive
- Permiso denegado: Verifica que tienes acceso a la hoja de cálculo
- Resultados vacíos: Comprueba si la hoja tiene datos y encabezados adecuados
Tunelización SSH (Todos los Tipos de Bases de Datos)
Para una seguridad mejorada, puedes conectarte a través de un túnel SSH. Esto está disponible para todos los tipos de bases de datos tradicionales (MySQL, PostgreSQL, Redshift, Azure SQL).
Cuándo Usar la Tunelización SSH
- El servidor de la base de datos solo es accesible a través de un servidor de salto/bastión
- Se requiere una capa de seguridad adicional
- La base de datos está detrás de un firewall que permite SSH pero no conexiones directas a la base de datos
Parámetros de Conexión SSH
- Host SSH: El nombre de host o la IP de tu servidor SSH
- Puerto SSH: Generalmente 22 (puerto SSH predeterminado)
- Nombre de Usuario SSH: Tu nombre de usuario SSH
- Autenticación SSH: Contraseña o clave privada
- Contraseña SSH: Tu contraseña SSH (si no usas clave)
- Clave Privada SSH: Contenido de tu archivo de clave privada (si no usas contraseña)
Configuración de la Clave SSH
-
Genera un par de claves SSH (si no tienes uno):
ssh-keygen -t rsa -b 4096
-
Copia la clave pública al servidor:
ssh-copy-id nombre_usuario@servidor-ssh.com
-
Usa el contenido de la clave privada en PyQueryHub:
- Copia todo el contenido de tu archivo de clave privada
- Pégalo en el campo "Clave Privada SSH"
Cifrado SSL/TLS
El cifrado SSL/TLS asegura la conexión entre PyQueryHub y tu base de datos. Disponible para MySQL, PostgreSQL y otras bases de datos tradicionales.
Tipos de Certificados SSL
- Certificado CA: Certificado de la Autoridad de Certificación
- Certificado de Cliente: Tu certificado de cliente (para autenticación mutua)
- Clave de Cliente: Tu clave privada de cliente
Dónde Obtener Certificados SSL
- Proveedores en la nube: Generalmente proporcionan certificados descargables
- Autofirmados: Generados por tu administrador de base de datos
- Autoridades de certificación: Para entornos de producción
Configuración SSL
- Obtén los certificados de tu proveedor de base de datos
- Copia el contenido de los certificados (no las rutas de los archivos)
- Pégalos en los campos apropiados en PyQueryHub
- Prueba la conexión para verificar que SSL funciona
Problemas Comunes de SSL
- Problemas de formato del certificado (asegúrate de que sea formato PEM)
- Certificados expirados
- Desajuste del nombre de host en los certificados
- Falta de certificados intermedios
Solución de Problemas General
Fallos en la Prueba de Conexión
- Verifica las credenciales: Revisa dos veces todos los parámetros de conexión
- Conectividad de red: Asegúrate de que el servidor de la base de datos sea accesible
- Reglas de firewall: Revisa los firewalls tanto locales como del lado del servidor
- Permisos de usuario: Verifica que el usuario de la base de datos tenga los privilegios necesarios
- Estado del servicio: Confirma que el servicio de la base de datos esté en ejecución
Problemas de Rendimiento
- Latencia de red: Considera la proximidad geográfica a la base de datos
- Carga de la base de datos: Comprueba si el servidor de la base de datos está bajo una carga pesada
- Optimización de consultas: Revisa la eficiencia de las consultas
- Agrupación de conexiones: Límites de conexión del servidor de la base de datos
Mejores Prácticas de Seguridad
- Usa contraseñas seguras: Contraseñas complejas y únicas para los usuarios de la base de datos
- Limita los permisos: Otorga los privilegios de base de datos mínimos necesarios
- Habilita el cifrado: Usa SSL/TLS cuando esté disponible
- Auditorías regulares: Revisa y rota las credenciales periódicamente
- Seguridad de red: Usa la tunelización SSH cuando sea apropiado
Obtener Ayuda
Si continúas experimentando problemas de conexión:
- Revisa los registros del servidor de la base de datos para obtener detalles del error
- Verifica la conectividad de red usando herramientas como telnet o nc
- Prueba la conexión desde otro cliente para aislar los problemas
- Contacta a nuestro equipo de soporte con mensajes de error específicos
Para problemas específicos de la base de datos, consulta la documentación o los recursos de soporte de tu proveedor de base de datos.