Un bot qui se souvient de choses, comme des niveaux, des avertissements ou des paramètres par serveur, a besoin d’un endroit où les garder. Votre offre bot inclut une base de données. Vous pouvez aussi utiliser un fichier comme SQLite, qui ne demande aucune configuration mais se partage plus difficilement entre deux bots.
Créer la base de données
- Ouvrez votre serveur dans le panel et cliquez sur Bases de données dans le menu de gauche.
- Cliquez sur Nouvelle base de données, choisissez le type, ajoutez un libellé comme
bot-dataet cliquez sur Créer la base de données. - Cliquez sur la base de données pour voir l’hôte, le port, le nom de la base, l’utilisateur et le mot de passe. Voir Comment utiliser des bases de données avec votre serveur pour la page complète.
Gardez les informations hors de votre code
Mettez les informations de connexion dans un fichier que votre code lit, comme .env, et ne committez pas ce fichier dans git. Dans Files, créez .env :
DB_HOST=your-host
DB_PORT=3306
DB_NAME=your-database
DB_USER=your-user
DB_PASSWORD=your-password
Node.js (mysql2 et dotenv)
Ajoutez mysql2 et dotenv à package.json, puis :
require('dotenv').config();
const mysql = require('mysql2/promise');
const pool = mysql.createPool({
host: process.env.DB_HOST,
port: Number(process.env.DB_PORT),
database: process.env.DB_NAME,
user: process.env.DB_USER,
password: process.env.DB_PASSWORD,
});
async function main() {
await pool.query('CREATE TABLE IF NOT EXISTS warnings (id INT AUTO_INCREMENT PRIMARY KEY, user_id VARCHAR(32), reason TEXT)');
const [rows] = await pool.query('SELECT COUNT(*) AS n FROM warnings');
console.log('warnings stored:', rows[0].n);
}
main();
Python (aiomysql)
Ajoutez aiomysql et python-dotenv à requirements.txt, puis :
import os
import aiomysql
from dotenv import load_dotenv
load_dotenv()
async def get_pool():
return await aiomysql.create_pool(
host=os.environ["DB_HOST"], port=int(os.environ["DB_PORT"]),
db=os.environ["DB_NAME"], user=os.environ["DB_USER"],
password=os.environ["DB_PASSWORD"], autocommit=True,
)
Bon à savoir
- Utilisez un pool de connexions, pas une nouvelle connexion à chaque commande.
- Passez toujours les saisies des utilisateurs comme paramètres de requête, jamais en collant du texte dans le SQL.
- Incluez la base de données dans vos backups : Comment créer, télécharger et restaurer des backups.
- Si le bot ne peut pas se connecter, comparez l’hôte et le port avec la page de la base de données et vérifiez que le mot de passe ne contient aucun espace parasite.
Votre serveur est hébergé ailleurs ? Transférez-le chez nous





