Controladores

Controlador MySQL

Esta página describe la implementación del controlador MySQL en Gigantics y cómo los parámetros de conexión se corresponden con los campos de la interfaz.

Parámetros de conexión

Campo UIImplementación técnicaDescripciónObligatorioValor por defecto
Hosthost en la configuración de mysql2Nombre o IP del servidor MySQLlocalhost
Puertoport en la configuraciónPuerto donde escucha MySQL3306 (de driverPorts)
Base de datosdatabaseNombre de la base a conectar
UsuariouserUsuario para autenticación
ContraseñapasswordContraseña del usuario

Detalles técnicos

El controlador utiliza la biblioteca mysql2. Los parámetros anteriores se pasan tal cual al objeto de configuración.

Si se habilita un túnel SSH, primero se crea el túnel y después la conexión MySQL.

Opciones de autenticación

MySQL sólo requiere usuario y contraseña.

TipoCampos UIDescripción
NingunoDeshabilita autenticación (no recomendado)
ContraseñaUsuario / ContraseñaAutenticación estándar
Gestor de contraseñasCampos específicosObtiene credenciales de un gestor externo

Soporte de túnel SSH

El controlador admite túneles SSH para acceder a bases detrás de firewalls o redes privadas. Consulta la página de Túnel SSH para más información.

Puntos de la API que lo usan

  • Creación de Tap (descubrimiento de origen)
  • Creación de Sink (destino de datos anonimizados)
  • Ejecución de Pipelines (extracción y carga)

Parámetros personalizados (YAML)

Se pueden definir parámetros avanzados en YAML para afinar la conexión, el pool, SSL, etc.

Parámetros de conexión

# Configuración SSL
ssl:
  rejectUnauthorized: false
  ca: |
    -----BEGIN CERTIFICATE-----
    # Contenido CA
    -----END CERTIFICATE-----
  key: |
    -----BEGIN PRIVATE KEY-----
    # Clave privada cliente
    -----END PRIVATE KEY-----
  cert: |
    -----BEGIN CERTIFICATE-----
    # Certificado cliente
    -----END CERTIFICATE-----
  ciphers: "ECDHE-RSA-AES256-SHA:AES256-SHA"
  minVersion: "TLSv1.2"
  maxVersion: "TLSv1.3"
 
# Autenticación multifactor
password1: primera_clave
password2: codigo_otp
password3: datos_biometricos
 
# Opciones avanzadas
connectTimeout: 10000
charset: "UTF8MB4_UNICODE_CI"
compress: true
multipleStatements: false
timezone: "+00:00"
enableKeepAlive: true
keepAliveInitialDelay: 10000
supportBigNumbers: true
bigNumberStrings: true
dateStrings: false

Configuración del pool

connectionLimit: 10
maxIdle: 10
idleTimeout: 60000
queueLimit: 0
waitForConnections: true

Ejemplos

SSL estricto

ssl:
  rejectUnauthorized: true
  ca: ${file:/ruta/ca.pem}
  cert: ${file:/ruta/cliente.pem}
  key: ${file:/ruta/clave.pem}

Soporte de números grandes

supportBigNumbers: true
bigNumberStrings: true
decimalNumbers: true
timezone: "UTC"
connectionLimit: 15
idleTimeout: 30000

Tabla de Contenidos