1. C'est quoi MariaDB ?
MariaDB est une base de données relationnelle : elle range vos informations dans des tableaux reliés entre eux, que vous interrogez avec le langage SQL. Elle est compatible avec MySQL, donc tout ce qui fonctionne avec MySQL fonctionne avec MariaDB, sans modification.
On l'utilise pour stocker les données d'un site WordPress, d'une boutique en ligne, d'un bot Discord, d'un plugin Minecraft ou d'une application métier. Votre instance CroustyCloud tourne 24h/24 et reste joignable depuis n'importe où, sans faire tourner un serveur sur votre propre ordinateur.
2. Les notions de base
Une instance MariaDB s'organise comme un classeur : l'instance contient des bases, chaque base contient des tables, et chaque table contient des lignes.
| Notion | Ce que c'est | Exemple |
|---|---|---|
| Instance | Le serveur MariaDB que vous louez | Votre offre CroustyCloud |
| Base de données | Un ensemble de tables pour un projet | monsite, monbot |
| Table | Un tableau qui stocke un type d'information | utilisateurs, commandes |
| Colonne | Une information présente pour chaque ligne, avec un type | email (texte), age (nombre) |
| Ligne | Un enregistrement dans la table | Un utilisateur précis |
| Clé primaire | Une colonne qui identifie chaque ligne de façon unique | id |
| Utilisateur | Un compte qui peut se connecter, avec des droits précis | monsite |
Les types de colonnes les plus utilisés :
INTpour un nombre entier,DECIMAL(10,2)pour un prixVARCHAR(255)pour un texte court,TEXTpour un texte longDATETIMEpour une date et une heureBOOLEANpour vrai ou faux
3. Se connecter à votre instance
Vos identifiants se trouvent dans CroustyPanel, sur la page de votre service :
- L'hôte (adresse IP) et le port de votre instance
- L'utilisateur administrateur (par défaut
admin) - Son mot de passe
Gardez ces identifiants précieusement. Ils donnent un accès complet à toutes vos données. Ne les partagez jamais et ne les publiez pas dans un dépôt Git.
Trois façons de vous connecter, de la plus simple à la plus technique :
phpMyAdmin, depuis votre navigateur. Renseignez le serveur, l'utilisateur et le mot de passe : vous voyez vos bases et vos tables, et vous pouvez tout gérer en quelques clics.
Dans le champ Serveur de phpMyAdmin, séparez l'hôte et le port par un espace, et non par deux-points. Par exemple : 163.5.107.67 30542.
Un logiciel sur votre ordinateur : HeidiSQL (Windows), DBeaver (Windows, macOS, Linux) ou MySQL Workbench. Créez une nouvelle connexion de type MariaDB ou MySQL avec les mêmes informations.
La ligne de commande, si le client MariaDB est installé sur votre machine :
mariadb -h HOTE -P PORT -u admin -pLe mot de passe vous est demandé après avoir validé la commande.
Dans votre application, vous utiliserez les mêmes informations. Par exemple pour WordPress, dans wp-config.php : DB_HOST vaut HOTE:PORT, puis DB_NAME, DB_USER et DB_PASSWORD reprennent la base et l'utilisateur créés à l'étape suivante.
4. Créer une base et un utilisateur dédié
Le compte administrateur peut tout faire sur votre instance. L'utiliser directement dans vos applications est risqué : si l'une d'elles est compromise, toutes vos bases sont exposées.
La bonne pratique : créer une base et un utilisateur par projet, avec des droits limités à cette base.
Connecté avec le compte administrateur, exécutez ces trois commandes en remplaçant les noms et le mot de passe :
CREATE DATABASE monsite CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'monsite'@'%' IDENTIFIED BY 'un_mot_de_passe_long_et_unique';
GRANT ALL PRIVILEGES ON monsite.* TO 'monsite'@'%';Que font ces commandes ?
CREATE DATABASE: crée la base.utf8mb4permet de stocker tous les caractères, accents et emojis comprisCREATE USER: crée l'utilisateur. Le%l'autorise à se connecter depuis n'importe quelle adresseGRANT: donne à cet utilisateur tous les droits, mais uniquement sur sa base
Vérifiez que tout est en place :
SHOW DATABASES;
SHOW GRANTS FOR 'monsite'@'%';5. Les commandes SQL essentielles
Cinq commandes couvrent l'essentiel du quotidien. Commencez par sélectionner votre base :
USE monsite;Créer une table
CREATE TABLE utilisateurs (
id INT AUTO_INCREMENT PRIMARY KEY,
pseudo VARCHAR(50) NOT NULL,
email VARCHAR(255) NOT NULL UNIQUE,
inscrit_le DATETIME DEFAULT CURRENT_TIMESTAMP
);AUTO_INCREMENT: numérote les lignes automatiquementNOT NULL: rend la colonne obligatoireUNIQUE: interdit les doublons
Ajouter des lignes
INSERT INTO utilisateurs (pseudo, email) VALUES ('Alex', 'alex@exemple.fr');Lire des lignes
SELECT * FROM utilisateurs;
SELECT pseudo, email FROM utilisateurs WHERE id = 1;
SELECT * FROM utilisateurs ORDER BY inscrit_le DESC LIMIT 10;Modifier des lignes
UPDATE utilisateurs SET pseudo = 'Alexandre' WHERE id = 1;Supprimer des lignes
DELETE FROM utilisateurs WHERE id = 1;Un UPDATE ou un DELETE sans WHERE s'applique à toutes les lignes de la table. Relisez toujours votre condition avant de valider, et lancez d'abord un SELECT avec le même WHERE pour voir les lignes concernées.
6. Sauvegarder et restaurer vos données
Votre instance est sauvegardée automatiquement chaque jour par CroustyCloud. Faites quand même votre propre export avant toute opération risquée : une mise à jour d'application, une migration ou une grosse suppression.
Depuis phpMyAdmin : sélectionnez votre base, onglet Exporter, format SQL, puis Exécuter. Pour restaurer, onglet Importer et choisissez le fichier.
En ligne de commande :
# Exporter une base dans un fichier
mariadb-dump -h HOTE -P PORT -u monsite -p monsite > sauvegarde.sql
# Restaurer ce fichier dans la base
mariadb -h HOTE -P PORT -u monsite -p monsite < sauvegarde.sqlConservez vos exports en dehors de l'instance, sur votre ordinateur ou un stockage en ligne. Une sauvegarde stockée au même endroit que les données ne protège pas contre tout.
7. Bonnes pratiques et sécurité
- Un utilisateur par application, avec des droits limités à sa base. Le compte administrateur sert uniquement à créer les bases et les utilisateurs
- Des mots de passe longs et uniques, générés par un gestionnaire de mots de passe
- Restreignez l'accès par IP quand c'est possible, en remplaçant
'%'par l'adresse de votre serveur lors de la création de l'utilisateur - Ajoutez des index sur les colonnes que vous recherchez souvent, par exemple
CREATE INDEX idx_email ON utilisateurs(email); - Surveillez l'espace disque dans CroustyPanel : une base pleine peut bloquer votre application
8. Récapitulatif : ce que vous avez fait
- ✅ Connexion à votre instance MariaDB
- ✅ Base et utilisateur dédiés créés
- ✅ Première table créée et manipulée
- ✅ Sauvegarde maîtrisée
Votre base MariaDB est prête. Vous pouvez maintenant y connecter votre site, votre bot ou votre application. Une question ou un blocage ? Ouvrez un ticket depuis CroustyPanel ou passez sur notre Discord.