Installer MariaDB Installez MariaDB sur un VPS HolyCloud, sécurisez l'installation, créez utilisateurs et bases, et configurez l'accès local pour vos applications. ~12 min de lecture Intermédiaire #mariadb #mysql #base-de-donnees #securite Installer MariaDB MariaDB est un moteur relationnel compatible MySQL, idéal pour WordPress, PrestaShop ou applications PHP sur un VPS Linux HolyCloud. Ce guide installe MariaDB depuis les dépôts officiels, exécute le script de sécurisation, crée un utilisateur applicatif et limite l'exposition réseau. Prérequis VPS HolyCloud Ubuntu 22.04/24.04 ou Debian 12 Au moins 1 Go RAM (2 Go recommandé en production avec trafic) Accès sudo Snapshot HolyCloud avant modification de bind-address ou ouverture de port 3306 Conseil : en production, laissez MariaDB en écoute sur 127.0.0.1 uniquement ; exposez 3306 seulement via VPN ou IP autorisées. Étape 1 : installation sudo apt update sudo apt install -y mariadb-server mariadb-client sudo systemctl enable --now mariadb sudo systemctl status mariadb Version installée : mariadb --version Étape 2 : sécurisation interactive sudo mariadb-secure-installation Réponses recommandées : Valider le plugin de validation de mot de passe si proposé (niveau MEDIUM ou STRONG) Définir un mot de passe fort pour root Supprimer les utilisateurs anonymes : Y Désactiver la connexion root à distance : Y Supprimer la base de test : Y Recharger les privilèges : Y Étape 3 : connexion administrateur locale sudo mariadb -u root -p Dans le client SQL : SELECT VERSION(); SHOW DATABASES; EXIT; Sur certaines installations Debian, root utilise le socket Unix sans mot de passe : sudo mariadb Étape 4 : créer une base et un utilisateur applicatif Remplacez monapp, monapp_user et le mot de passe : sudo mariadb <<'EOF' CREATE DATABASE monapp CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'monapp_user'@'localhost' IDENTIFIED BY 'MotDePasseFortIci!'; GRANT ALL PRIVILEGES ON monapp.* TO 'monapp_user'@'localhost'; FLUSH PRIVILEGES; EOF Test : mariadb -u monapp_user -p -h 127.0.0.1 monapp -e "SELECT 1 AS ok;" Étape 5 : configuration réseau (bind-address) Fichier principal (chemin selon version) : sudo mariadb -e "SELECT @@datadir;" ls /etc/mysql/mariadb.conf.d/ Éditez : sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf Section [mysqld] : bind-address = 127.0.0.1 skip-name-resolve Pour autoriser une IP applicative distante (déconseillé sans pare-feu strict) : CREATE USER 'monapp_user'@'10.0.0.5' IDENTIFIED BY 'MotDePasseFortIci!'; GRANT ALL PRIVILEGES ON monapp.* TO 'monapp_user'@'10.0.0.5'; sudo systemctl restart mariadb Étape 6 : paramètres mémoire de base (petit VPS) sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf Exemple pour 2 Go RAM : [mysqld] innodb_buffer_pool_size = 512M max_connections = 100 sudo systemctl restart mariadb Étape 7 : sauvegarde logique rapide mysqldump -u monapp_user -p -h 127.0.0.1 monapp > /var/backups/monapp-$(date +%F).sql gzip /var/backups/monapp-$(date +%F).sql Automatisez via cron (voir « Tâches planifiées avec cron »). Vérification sudo systemctl is-active mariadb sudo ss -tlnp | grep 3306 mariadb -u monapp_user -p -h 127.0.0.1 -e "SHOW TABLES FROM monapp;" sudo mariadb -e "SELECT user, host FROM mysql.user WHERE user='monapp_user';" ss doit montrer 127.0.0.1:3306 si vous avez restreint bind-address. Besoin d'aide HolyCloud Access denied : utilisateur/host ('user'@'localhost' vs 'user'@'127.0.0.1') — recréez avec le bon host MariaDB ne démarre pas : sudo journalctl -u mariadb -n 50 --no-pager Performances : free -h, ajustez innodb_buffer_pool_size (max ~70 % RAM disponible pour MySQL seul) Support HolyCloud : mariadb --version, df -h, extrait de log après échec de démarrage Suite de la lecture Article précédent Installer K3s (Kubernetes léger) Lire Article suivant Installer MongoDB Community Lire