Esta guía reúne operaciones habituales de InfluxDB 2 desde la línea de comandos: preparar la conexión, ejecutar consultas Flux, escribir puntos, exportar resultados e importar datos. Está dirigida a instalaciones existentes de InfluxDB 2. InfluxDB 2 y Flux están en mantenimiento; InfluxDB 3 es la generación actual y no admite Flux de forma nativa, así que los proyectos nuevos o las migraciones deben evaluar SQL o InfluxQL [1][2].
Preparar la conexión
La CLI puede leer el host, la organización y el token de variables de entorno, o de una configuración creada con influx config. Usa un token con los permisos mínimos necesarios y evita escribirlo literalmente en scripts, historial de shell o repositorios [3].
export INFLUX_HOST="https://influxdb.example.net"
export INFLUX_ORG="<ORG_NAME>"
export INFLUX_TOKEN="<INFLUXDB_TOKEN>"
export INFLUX_BUCKET="<BUCKET_NAME>"
Para instalaciones locales, ajusta INFLUX_HOST a la URL y el puerto del servidor. La CLI también puede guardar configuraciones de conexión con influx config create, útil si trabajas con varios entornos [3].
Consultar datos con Flux
influx query ejecuta una consulta Flux. El ejemplo filtra una medición y un campo dentro de un intervalo temporal; reemplaza los nombres por los de tu esquema [4]:
influx query 'from(bucket: "<BUCKET_NAME>")
|> range(start: -24h)
|> filter(fn: (r) => r["_measurement"] == "<MEASUREMENT>")
|> filter(fn: (r) => r["_field"] == "<FIELD>")'
Para mostrar las consultas como CSV anotado sin las tablas de texto de la terminal, usa --raw. El CSV anotado incluye metadatos de columnas y puede conservar el formato necesario para volver a escribir los resultados [5]:
influx query --raw 'from(bucket: "<BUCKET_NAME>") |> range(start: -1h)' \
> consulta.csv
Escribir datos
La CLI acepta datos en formato Line Protocol. Cada punto incluye una medición, etiquetas opcionales, campos y una marca temporal opcional [6]. Este ejemplo pasa la hora Unix en segundos, por lo que especifica la precisión con -p s:
influx write \
--bucket "$INFLUX_BUCKET" \
--org "$INFLUX_ORG" \
--precision s \
'temperatura,ubicacion=sala valor=21.7 1710000000'
Para datos preparados en un archivo, usa --file y declara su formato cuando sea necesario. InfluxDB puede escribir CSV anotado si el archivo incluye las anotaciones y columnas esperadas [5][6].
Exportar e importar resultados
Una consulta Flux de InfluxDB 2 devuelve CSV anotado. Guárdalo en un archivo y vuelve a escribirlo con influx write --format=csv para conservar los metadatos que describen mediciones, campos, etiquetas y marcas temporales [5]:
influx query --raw \
'from(bucket: "<BUCKET_NAME>") |> range(start: 2024-01-01T00:00:00Z, stop: 2024-01-02T00:00:00Z)' \
> export.csv
influx write \
--bucket "$INFLUX_BUCKET" \
--org "$INFLUX_ORG" \
--format=csv \
--file export.csv
Esto sirve para intercambiar resultados de consultas entre buckets o entornos compatibles, pero no sustituye una copia de seguridad completa del servidor. Para proteger una instalación OSS, utiliza las funciones de backup y restore adecuadas a la versión [7].
Borrar datos con un predicado acotado
influx delete elimina puntos dentro del bucket y el intervalo indicado. Si se omite el predicado, se borra todo el contenido comprendido entre las fechas; comprueba por separado el bucket, los límites temporales y el predicado antes de ejecutar la operación [8].
influx delete \
--bucket "$INFLUX_BUCKET" \
--start '2024-01-01T00:00:00Z' \
--stop '2024-01-02T00:00:00Z' \
--predicate '_measurement="<MEASUREMENT>" AND <TAG>="<TAG_VALUE>"'
Precaución: prueba primero el mismo filtro con una consulta de lectura. Un predicado incorrecto o la ausencia de predicado puede borrar más datos de los previstos.
En resumen
- Confirma que los comandos se dirigen a una instalación InfluxDB 2 compatible con Flux.
- Mantén los tokens en variables de entorno o en una configuración protegida de la CLI.
- Usa CSV anotado para exportar e importar resultados de consultas.
- Revisa bucket, intervalo y predicado antes de borrar datos.
- Planifica la migración de consultas Flux si el destino es InfluxDB 3.
📚 Fuentes consultadas
- The future of Flux — InfluxData
- Which InfluxDB 3 should I use? — InfluxData
- Install and use the influx CLI — InfluxDB OSS v2
- Query data with Flux — InfluxDB OSS v2
- Write CSV data to InfluxDB — InfluxDB OSS v2
- Write data with the influx CLI — InfluxDB OSS v2
- Back up and restore InfluxDB OSS — InfluxDB OSS v2
- Delete data — InfluxDB OSS v2