Guías

Guías del panel

Tutoriales paso a paso para configurar el workspace, invitar al equipo y permisos.

Panel de Claix

Cómo conectar mi MariaDB a Claix

Claix se conecta a tu MariaDB con un usuario dedicado (claix_agent), prueba la conexión desde el panel y guarda las credenciales de forma segura. Con esa conexión puedes usar Claix Retrieve: Data Map, rutas y agentes de solo lectura.

MariaDB en Claix es solo Retrieve. Claix Ingest sigue siendo PostgreSQL. El protocolo es el de MySQL, pero Claix comprueba que el servidor es MariaDB. Esta guía cubre requisitos, el SQL del usuario, los GRANT SELECT, el formulario del panel y qué hacer después de conectar. No hace falta tocar la API pública.

1. Antes de empezar

Necesitas:

  • Una cuenta Claix con acceso al panel (/dashboard).
  • Un servidor MariaDB 10.6 o superior accesible por internet con TLS (RDS for MariaDB, SkySQL, un VPS con hostname público, etc.). Si el servidor es MySQL, usa la guía de MySQL: Claix rechaza un servidor que no coincide con el motor elegido.
  • Permisos de administrador para crear el usuario claix_agent y los GRANT.
  • El hostname DNS (nunca una IP), el nombre de la base y una contraseña fuerte para el usuario.

En el panel, la pantalla está en Conexión a Base de Datos (/dashboard/database-connection).

2. Principios de seguridad

  • Nunca uses root ni el usuario administrador en Claix.
  • Claix solo acepta el usuario claix_agent.
  • El usuario se crea con REQUIRE SSL. Sin TLS, Claix no conecta.
  • Solo SELECT, tabla a tabla. No des INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, GRANT OPTION, roles ni privilegios globales (ON *.*).
  • No concedas nada sobre mysql, sys, performance_schema ni information_schema.
  • El host debe ser un nombre DNS público. Localhost, IPs y redes privadas están bloqueadas.
  • La contraseña se prueba al conectar y se guarda en Vault: no permanece en el navegador ni en tablas públicas del panel.

3. Crear el usuario claix_agent

En el editor SQL de tu proveedor (RDS, SkySQL, el CLI mariadb, etc.), ejecuta el script. Cambia tu-contraseña-fuerte.

CREATE USER 'claix_agent'@'%' IDENTIFIED BY 'tu-contraseña-fuerte' REQUIRE SSL;

El host % deja entrar desde internet. Si tu proveedor exige otro host, créalo con ese valor, pero el nombre de usuario tiene que ser exactamente claix_agent. Este usuario no lleva privilegios globales: los GRANT van tabla a tabla.

4. SELECT tabla a tabla

Claix nombra las tablas como base.tabla. Sustituye tu_base y tu_tabla por los nombres reales. El nombre de la base solo puede llevar letras, números y _.

GRANT SELECT ON `tu_base`.`tu_tabla` TO 'claix_agent'@'%';

Repite la línea por cada tabla que Retrieve deba consultar. En el panel, después de conectar, marcas las tablas y Claix genera este SQL por ti: lo copias y lo ejecutas en tu base.

MariaDB no usa políticas RLS. El límite es el GRANT: sin él, Claix conecta pero no ve esa tabla. En las consultas JSON usa JSON_UNQUOTE(JSON_EXTRACT(col, '$.campo')): MariaDB no tiene los operadores -> ni ->>.

5. Red, puerto y TLS

CampoQué poner
HostHostname DNS público (ej. el endpoint de RDS for MariaDB). No uses IP ni localhost.
Puerto3306, 3307, 3308, 4000 o 25060
Base de datosNombre exacto de la base. Solo letras, números y _.
UsuarioSiempre claix_agent (el campo está fijo)
ContraseñaLa del usuario que creaste, no la del administrador
SSLrequire (recomendado: cifra y acepta CAs públicas y las de Amazon RDS) o verify-full (pega tu CA en PEM si el certificado es privado)

Abre el firewall o el security group para que el puerto acepte TLS desde internet. Un certificado autofirmado no pasa con require: usa verify-full y pega la CA. El servidor tiene que tener TLS activo.

6. Conectar desde el panel (paso a paso)

  1. Entra en /dashboard e inicia sesión.
  2. En la barra lateral abre Conexión a Base de Datos.
  3. Elige el motor MariaDB (solo Retrieve).
  4. Copia el SQL de crear claix_agent, cambia la contraseña y ejecútalo en tu MariaDB.
  5. Completa nombre de la conexión, host, puerto, base de datos y la contraseña de claix_agent. El usuario no se puede cambiar.
  6. Elige SSL. Con verify-full, pega el certificado CA completo (líneas BEGIN CERTIFICATE / END CERTIFICATE).
  7. Pulsa Probar y guardar. Claix comprueba que el servidor es MariaDB 10.6 o superior, lee SHOW GRANTS y guarda la contraseña en Vault.
  8. Con la conexión activa, marca las tablas y ejecuta el GRANT SELECT que genera el panel. Luego pulsa Recargar schema.

Si falla, el mensaje del panel indica host inalcanzable, SSL, usuario distinto de claix_agent, versión anterior a 10.6, un servidor MySQL o un privilegio de más (escritura, global o GRANT OPTION).

7. Después de conectar

Con la base enlazada puedes:

  • Retrieve: crear el Data Map, rutas y agentes en el menú Retrieve, y probarlos en el Sandbox. Cada consulta va en una transacción de solo lectura con límite de tiempo, en dialecto MariaDB.
  • Revisar tablas visibles: si la lista está vacía, ejecuta el GRANT SELECT y recarga el schema.

Ingest no usa esta conexión. Para escribir filas, conecta un PostgreSQL. Para desconectar, usa la opción de la misma página (pide escribir disconnect). Los agentes que dependan de esta conexión dejarán de poder consultarla hasta que vuelvas a conectar.

8. Checklist rápido

  1. MariaDB 10.6 o superior, con TLS, y usuario claix_agent creado con REQUIRE SSL.
  2. Sin privilegios globales, de escritura, de sistema ni GRANT OPTION.
  3. GRANT SELECT en cada tabla que Retrieve deba leer.
  4. Host DNS público, puerto permitido, SSL activo.
  5. Formulario del panel con motor MariaDB y la contraseña de claix_agent.
  6. «Probar y guardar» en verde y schema recargado.

9. Preguntas frecuentes

¿Puedo usar Amazon RDS for MariaDB o SkySQL? Sí. Usa el endpoint (el hostname, no la IP), el puerto, la base que creaste y SSL require. El security group tiene que aceptar el puerto desde internet.

¿Por qué no veo tablas? Falta el GRANT SELECT sobre esas tablas, o no has pulsado Recargar schema después de concederlo.

¿La contraseña se guarda en el navegador? No. Solo se envía al probar la conexión y se almacena en Vault en el backend.

¿Puedo conectar varias bases a la vez? El panel muestra la conexión activa del workspace. Desconecta antes de apuntar a otra instancia. Ingest solo carga la conexión PostgreSQL.

El panel dice que el servidor es MySQL. Elige el motor MySQL y vuelve a probar. Claix no trata un MySQL como MariaDB.

¿Retrieve necesita INSERT? No. Solo SELECT. Ingest, que sí escribe, es PostgreSQL.