Créer une base de données MariaDB
MariaDB est un serveur de base de données compatible avec MySQL : WordPress, PrestaShop, Joomla, Drupal et la plupart des applications PHP l'utilisent sans modification. Ce guide crée une base sur l'hébergement web (depuis le panneau) ou sur un VPS (en ligne de commande).
Dans les deux cas, une application a besoin de quatre informations : l'hôte, le nom de la base, l'utilisateur et son mot de passe.
Sur l'hébergement web
Le nombre de bases dépend de la formule :
| Formule | Bases MySQL/MariaDB |
|---|---|
| Web Starter | 1 |
| Web Standard | 5 |
| Web Pro | 15 |
Créer la base
- Dans votre espace client, ouvrez la fiche de l'hébergement web et accédez au panneau KeyHelp.
- Ouvrez la section des bases de données et créez une base. Le panneau crée en même temps un utilisateur qui a tous les droits sur cette base.
- Choisissez un mot de passe long et unique, ou utilisez celui proposé. Notez le nom de la base, l'utilisateur et le mot de passe.
Importer une base existante
Pour migrer un site, exportez d'abord la base depuis l'ancien hébergement (fichier .sql), puis importez-la avec phpMyAdmin, accessible depuis le panneau :
- Ouvrez phpMyAdmin et sélectionnez la base dans la colonne de gauche.
- Onglet Importer, choisissez le fichier
.sql(ou.sql.gz), puis Importer.
Pour un fichier volumineux qui dépasse la limite d'import, découpez-le ou demandez de l'aide par ticket.
Accès depuis l'extérieur
Les bases de l'hébergement web sont faites pour les sites hébergés au même endroit.
Sauvegardes
Les serveurs de l'hébergement web sont sauvegardés chaque jour, avec un historique de 6 mois (7 sauvegardes quotidiennes, 4 hebdomadaires, 6 mensuelles). Pour restaurer une base, ouvrez un ticket en indiquant la date voulue. Gardez aussi votre propre export (phpMyAdmin, onglet Exporter) avant chaque grosse modification.
Sur un VPS
Installer MariaDB
apt update
apt install -y mariadb-server
systemctl enable --now mariadb
mariadb-secure-installationmariadb-secure-installation pose quelques questions : sur Debian, l'accès root se fait déjà par le compte système (authentification unix_socket), sans mot de passe à définir ; répondez oui à la suppression des utilisateurs anonymes, à l'interdiction de la connexion root à distance et à la suppression de la base de test.
Créer la base et l'utilisateur
mariadbCREATE DATABASE monsite CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'monsite'@'localhost' IDENTIFIED BY 'un-mot-de-passe-long';
GRANT ALL PRIVILEGES ON monsite.* TO 'monsite'@'localhost';
FLUSH PRIVILEGES;
EXIT;utf8mb4gère tous les caractères, émojis compris : c'est le bon choix pour une nouvelle base.- Un utilisateur par application, limité à sa base : si une application est compromise, les autres bases restent hors d'atteinte.
- N'utilisez jamais le compte root de MariaDB dans une application.
Testez :
mariadb -u monsite -p monsiteGarder la base en local
Sur Debian, MariaDB écoute par défaut sur 127.0.0.1 seulement. Vérifiez :
ss -tlnp | grep 3306La ligne doit montrer 127.0.0.1:3306. Laissez-la ainsi : n'ouvrez pas le port 3306 sur Internet.
Sauvegarder
Les VPS ne sont pas sauvegardés automatiquement. Un export quotidien, compressé :
mkdir -p /var/backups/mariadb
mariadb-dump --single-transaction --routines monsite | gzip > /var/backups/mariadb/monsite-$(date +%F).sql.gz--single-transaction produit un export cohérent sans bloquer le site. Automatisez cette commande (tâche cron ou minuterie systemd), supprimez les exports anciens, et copiez-les hors du VPS : une sauvegarde qui reste sur le même disque disparaît avec lui.
Restaurer :
gunzip < /var/backups/mariadb/monsite-AAAA-MM-JJ.sql.gz | mariadb monsiteLes informations à reporter dans l'application
| Paramètre | Hébergement web | VPS (même machine) |
|---|---|---|
| Hôte | localhost |
localhost ou 127.0.0.1 |
| Port | 3306 (par défaut, souvent implicite) | 3306 |
| Base | nom créé dans le panneau | monsite |
| Utilisateur | utilisateur créé dans le panneau | monsite |
| Mot de passe | celui que vous avez choisi | celui que vous avez choisi |
Pour WordPress, ces valeurs vont dans wp-config.php : voir Installer WordPress. Ne les versionnez jamais dans un dépôt Git : voir Variables d'environnement et jetons.
Problèmes fréquents
| Message | Cause probable |
|---|---|
Access denied for user |
Mot de passe erroné, ou utilisateur créé pour un autre hôte ('user'@'%' au lieu de 'user'@'localhost'). |
Unknown database |
Nom de base mal recopié, préfixe oublié. |
Can't connect to local server through socket |
MariaDB arrêté (VPS : systemctl status mariadb). |
| Caractères accentués illisibles | Base ou import dans un autre jeu de caractères que utf8mb4. |
Besoin d'aide ?
Ouvrez un ticket depuis votre espace client avec le nom de la base et le message d'erreur exact. Ne donnez jamais le mot de passe de la base dans un ticket.