Bots de Discord

Guardar los datos que tu bot tiene que recordar

Revisado el 6 de septiembre de 2026 2 min de lectura

En cuanto tu bot tiene que recordar algo entre reinicios, necesitas dónde ponerlo. Hay tres respuestas razonables y la equivocada solo se hace evidente más tarde, cuando los datos ya están dentro.

Elegir

OpciónBuena paraSe rompe cuando
Un archivo JSONAjustes, listas pequeñas, unas decenas de entradasSe solapan dos escrituras, o el proceso muere a mitad
SQLiteCasi todos los bots. Miles de filas, consultas de verdad, un archivoEscriben varios procesos a la vez
MySQLBots con sharding, paneles web, datos compartidos con una webCon nada, pero hay más que montar
Un archivo JSON acabará perdiendo datos

Escribir el archivo entero en cada cambio significa que una caída durante una escritura lo deja cortado o vacío. Está bien para configuración que editas a mano; es mala casa para cualquier cosa que generen los usuarios. Si no queda otra, escribe a un archivo temporal y renómbralo sobre el original: un renombrado es atómico y no puede quedarse a medias.

Pasar de JSON a SQLite

  1. Añade la librería

    better-sqlite3 en Node, o el módulo sqlite3 que viene de serie en Python. No hay servidor que levantar: la base de datos es un archivo junto a tu código.

  2. Crea la tabla igual que lo que ya guardas

    Una columna por clave que estabas escribiendo. Mantén los mismos nombres para que el script de migración sea obvio.

  3. Escribe una importación de una sola vez

    Lee el JSON, inserta las filas, y conserva el archivo viejo hasta estar seguro. Borrarlo una semana después no cuesta nada; borrarlo pronto lo cuesta todo.

  4. Incluye el archivo de base de datos en tus copias

    Ahora es la única copia de todo lo que tu bot sabe.

Elijas lo que elijas, respáldalo con una tarea

El archivo de datos es la parte de tu bot que no puedes reescribir de memoria. El código lo vuelves a subir desde tu portátil; un año de ajustes de usuarios, no.