[{"data":1,"prerenderedAt":216},["ShallowReactive",2],{"seo-verification":3,"blog-heberger-mariadb-vps-ma-fr":6,"promo-bar-likely":215},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-heberger-mariadb-vps-ma-fr",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"noindex":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":33,"intro":36,"sections":37,"ctaTitle":146,"ctaBody":147,"ctaButton":148,"ctaUrl":149,"relatedPosts":150},146,"heberger-mariadb-vps",{"fr":10,"en":12,"ar":13,"es":14},"mariadb-on-a-vps-free-fast-controlled-sql","mariadb-على-vps-sql-حر-وسريع-وتحت-السيطرة","alojar-mariadb-en-un-vps","MariaDB sur VPS : SQL libre, rapide et maîtrisé","Déployez MariaDB sur un VPS ServOrbit : installation 1 clic, sauvegardes automatisées, optimisation InnoDB et accès distant sécurisé.",10,1,false,"2026-01-30T00:00:00+00:00","2026-10-07T23:07:24+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},6,"Bases de données","bases-de-donnees","bg-teal-500\u002F10 text-teal-400","database",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fheberger-mariadb-vps-poster.svg",{"categorySlug":34,"appSlug":35},"db","mariadb-stack","MariaDB reste un socle robuste pour WordPress, Dolibarr, PrestaShop et beaucoup d'applications PHP. Sur un VPS ServOrbit, vous gardez la main sur les comptes, les volumes, les sauvegardes et la sécurité réseau — sans dépendre d'une offre mutualisée opaque. Ce guide couvre l'installation complète, la configuration des performances InnoDB, les sauvegardes automatisées et l'accès distant sécurisé.",[38,42,52,55,86,89,92,95,98,140,143],{"type":39,"title":40,"body":41},"h2","Pourquoi héberger MariaDB sur un VPS ?","MariaDB est un fork communautaire de MySQL, 100 % open source, reconnu pour ses performances, sa fiabilité et sa compatibilité totale avec les applications MySQL existantes. Hébergé sur un VPS, il vous libère des restrictions des hébergements mutualisés : pas de limites de connexions imposées, pas de quotas arbitraires sur la taille des bases, et la possibilité de tuner finement les paramètres du moteur InnoDB selon votre charge réelle. Vous gardez la maîtrise de vos sauvegardes, de vos utilisateurs et de la sécurité réseau, sans dépendre d'un prestataire tiers pour chaque opération de maintenance.\n\nDeux versions LTS sont disponibles aujourd'hui : **MariaDB 11.4 LTS** (publiée en mai 2024, support garanti jusqu'en 2028+) et **MariaDB 10.11 LTS** (support jusqu'en février 2028). Les deux sont stables pour la production ; 11.4 apporte notamment l'abandon définitif du client `mysql` au profit de `mariadb`, un parallélisme amélioré des threads et des améliorations InnoDB.",{"type":43,"title":44,"items":45},"ul","Ce que vous pouvez faire avec MariaDB sur votre VPS",[46,47,48,49,50,51],"Héberger plusieurs bases de données pour différents projets ou clients sur une seule instance, avec isolation par utilisateur MariaDB","Connecter votre application Laravel, Symfony, WordPress ou tout autre framework via le port standard 3306, en local ou depuis un serveur distant sécurisé par pare-feu","Effectuer des sauvegardes automatisées avec `mariadb-dump` et les stocker compressées avec rétention configurable","Configurer la réplication maître-esclave pour assurer la haute disponibilité ou décharger les lectures intensives","Optimiser les performances en ajustant `innodb_buffer_pool_size`, `innodb_log_file_size` et `max_connections` directement dans `\u002Fetc\u002Fmysql\u002Fconf.d\u002F`","Gérer vos bases via des interfaces graphiques comme phpMyAdmin, Adminer ou DBeaver connectés à distance via un tunnel SSH sécurisé",{"type":39,"title":53,"body":54},"Prérequis","Avant de commencer, vérifiez que vous disposez des éléments suivants :\n\n- **Un VPS ServOrbit** : 2 Go de RAM minimum (usage léger ou test), **4 Go recommandés en production**. MariaDB seul consomme peu, mais la mémoire tampon InnoDB (`innodb_buffer_pool_size`) doit représenter 60 à 70 % de la RAM disponible pour être efficace — sur 2 Go, il reste moins de 1,2 Go utile après le système d'exploitation.\n- **Accès SSH root** ou sudo à votre VPS.\n- **Une version MariaDB récente** : MariaDB 11.4 LTS (mai 2024, support jusqu'en 2028+) ou MariaDB 10.11 LTS (support jusqu'en février 2028). Évitez 10.6 et inférieures en production : elles approchent de leur fin de support.\n- **Un pare-feu actif** (UFW ou équivalent) : le port 3306 ne doit jamais être exposé directement sur Internet.",{"type":56,"title":57,"steps":58},"steps","Installer MariaDB sur votre VPS ServOrbit",[59,62,65,68,71,74,77,80,83],{"title":60,"body":61},"Commander un VPS Cloud ServOrbit","Rendez-vous sur \u002Fvps-cloud et choisissez l'offre adaptée à votre charge. Pour une instance MariaDB de production, un VPS avec 2 vCPU et 4 Go de RAM constitue un bon point de départ. Finalisez la commande et notez les identifiants SSH (IP, utilisateur, mot de passe ou clé) envoyés par e-mail.",{"title":63,"body":64},"Se connecter en SSH au VPS","Ouvrez un terminal et connectez-vous à votre VPS :\n\n```bash\nssh root@\u003Cvotre-ip>\n```\n\nSi vous utilisez une clé SSH plutôt qu'un mot de passe :\n\n```bash\nssh -i ~\u002F.ssh\u002Fma_cle root@\u003Cvotre-ip>\n```\n\nUne fois connecté, vérifiez la version du système et les ressources disponibles : `free -m` pour la mémoire, `nproc` pour les cœurs.",{"title":66,"body":67},"Accéder au Marketplace dans votre espace client","Connectez-vous à votre espace client ServOrbit, puis naviguez vers la section « Mes VPS ». Sélectionnez votre VPS nouvellement commandé et cliquez sur l'onglet « Marketplace » pour accéder au catalogue d'applications disponibles en installation 1-clic.",{"title":69,"body":70},"Sélectionner MariaDB et lancer l'installation","Dans le Marketplace, recherchez « MariaDB » et cliquez sur la fiche de l'application. Vérifiez la version proposée (MariaDB 10.11 LTS ou 11.4 LTS recommandée), puis cliquez sur « Installer ». Le système provisionne automatiquement MariaDB sur votre VPS, configure le service systemd et génère un mot de passe root aléatoire communiqué à la fin de l'installation.",{"title":72,"body":73},"Sécuriser l'installation avec mysql_secure_installation","Depuis votre session SSH, exécutez :\n\n```bash\nmysql_secure_installation\n```\n\nCe script interactif vous guide pour définir ou renforcer le mot de passe root, supprimer les utilisateurs anonymes, désactiver la connexion root à distance et supprimer la base de test. Ces étapes sont indispensables avant toute mise en production.",{"title":75,"body":76},"Se connecter au shell MariaDB","Depuis MariaDB 11, le client s'appelle `mariadb` (et non plus `mysql`). Les deux fonctionnent encore sous 10.11, mais `mariadb` est la commande canonique :\n\n```bash\nmariadb -u root -p\n```\n\nSaisissez le mot de passe root défini à l'étape précédente. Vous êtes maintenant dans le shell SQL interactif (`MariaDB [(none)]>`).",{"title":78,"body":79},"Créer une base de données en utf8mb4","Il est important de créer les bases avec l'encodage `utf8mb4` et le collation `utf8mb4_unicode_ci` pour une gestion correcte de tous les caractères (émojis inclus) :\n\n```sql\nCREATE DATABASE mon_app CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;\nSHOW DATABASES;\n```\n\n`SHOW DATABASES;` confirme que votre base apparaît bien dans la liste.",{"title":81,"body":82},"Créer un utilisateur applicatif dédié","Ne jamais utiliser `root` depuis votre application. Créez un utilisateur limité à votre base :\n\n```sql\nCREATE USER 'appuser'@'localhost' IDENTIFIED BY 'mot_de_passe_fort';\nGRANT ALL PRIVILEGES ON mon_app.* TO 'appuser'@'localhost';\nFLUSH PRIVILEGES;\n```\n\nVotre application peut désormais se connecter via l'hôte `127.0.0.1`, port `3306`, avec ces identifiants.",{"title":84,"body":85},"Vérifier que MariaDB démarre automatiquement","Assurez-vous que le service redémarre bien après un reboot du VPS :\n\n```bash\nsystemctl enable mariadb\nsystemctl status mariadb\n```\n\nLa sortie doit afficher `active (running)`. Si le service n'est pas activé au démarrage, `systemctl enable mariadb` le configure.",{"type":39,"title":87,"body":88},"Sauvegardes automatisées avec mariadb-dump","Une base de données sans sauvegarde automatique est une bombe à retardement. Le script suivant crée une sauvegarde compressée chaque nuit, avec une rétention de 7 jours.\n\n**Créer le script de sauvegarde** dans `\u002Fusr\u002Flocal\u002Fbin\u002Fbackup-mariadb.sh` :\n\n```bash\n#!\u002Fbin\u002Fbash\nBACKUP_DIR=\"\u002Fvar\u002Fbackups\u002Fmariadb\"\nDATE=$(date +%Y%m%d_%H%M%S)\nDB_USER=\"root\"\nDB_PASS=\"votre_mot_de_passe_root\"\nRETENTION=7\n\nmkdir -p \"$BACKUP_DIR\"\n\n# Lister toutes les bases (hors système)\nDATABASES=$(mariadb -u\"$DB_USER\" -p\"$DB_PASS\" -e \"SHOW DATABASES;\" 2>\u002Fdev\u002Fnull | \\\n  grep -vE \"^(Database|information_schema|performance_schema|mysql|sys)$\")\n\nfor DB in $DATABASES; do\n  mariadb-dump \\\n    -u\"$DB_USER\" -p\"$DB_PASS\" \\\n    --single-transaction \\\n    --quick \\\n    --routines \\\n    --triggers \\\n    \"$DB\" | gzip > \"$BACKUP_DIR\u002F${DB}_${DATE}.sql.gz\"\ndone\n\n# Supprimer les sauvegardes de plus de RETENTION jours\nfind \"$BACKUP_DIR\" -name \"*.sql.gz\" -mtime +$RETENTION -delete\n```\n\nRendez le script exécutable et ajoutez une tâche cron pour l'exécuter chaque nuit à 02h00 :\n\n```bash\nchmod +x \u002Fusr\u002Flocal\u002Fbin\u002Fbackup-mariadb.sh\ncrontab -e\n```\n\nAjoutez la ligne suivante :\n\n```bash\n0 2 * * * \u002Fusr\u002Flocal\u002Fbin\u002Fbackup-mariadb.sh >> \u002Fvar\u002Flog\u002Fbackup-mariadb.log 2>&1\n```\n\n**Pourquoi `--single-transaction` et `--quick`** : `--single-transaction` prend un instantané cohérent sans poser de verrous sur les tables InnoDB (indispensable en production pour éviter les blocages d'écriture) ; `--quick` envoie les lignes une par une sans les charger en mémoire, ce qui évite les débordements RAM sur les grandes tables.\n\nPour restaurer une base depuis une sauvegarde :\n\n```bash\nzcat \u002Fvar\u002Fbackups\u002Fmariadb\u002Fmon_app_20261007_020000.sql.gz | mariadb -u root -p mon_app\n```",{"type":39,"title":90,"body":91},"Optimisation : configurer InnoDB","La configuration par défaut de MariaDB est très conservatrice (quelques dizaines de Mo pour `innodb_buffer_pool_size`). Sur un VPS de production, ajustez les paramètres InnoDB pour exploiter la mémoire disponible.\n\n**Créer le fichier** `\u002Fetc\u002Fmysql\u002Fconf.d\u002Fperformance.cnf` :\n\n```bash\n[mysqld]\n# Pool de tampons InnoDB : 60-70 % de la RAM totale\n# Sur 4 Go de RAM → 2,5 Go\ninnodb_buffer_pool_size = 2560M\n\n# Taille des fichiers journaux (recommandé : 25 % du pool)\ninnodb_log_file_size = 640M\n\n# Nombre de fichiers journaux (défaut 2, suffisant)\ninnodb_log_files_in_group = 2\n\n# Cache de requêtes désactivé sur MariaDB 10.3+ (dégradations mesurées)\nquery_cache_size = 0\nquery_cache_type = 0\n\n# Connexions simultanées (ajuster selon la charge réelle)\nmax_connections = 150\n\n# Journal des requêtes lentes (identifier les requêtes à optimiser)\nslow_query_log = 1\nlong_query_time = 1\nslow_query_log_file = \u002Fvar\u002Flog\u002Fmysql\u002Fmariadb-slow.log\n```\n\nAdaptez `innodb_buffer_pool_size` selon la RAM de votre VPS : sur **2 Go**, comptez **1,2 Go** (1228M) ; sur **8 Go**, comptez **5,5 Go** (5632M).\n\nRéutilisez les paramètres avec `innodb_log_file_size` à environ 25 % du buffer pool, puis redémarrez MariaDB pour appliquer la configuration :\n\n```bash\nsystemctl restart mariadb\n```\n\nVérifiez que les paramètres ont bien été pris en compte :\n\n```sql\nSHOW VARIABLES LIKE 'innodb_buffer_pool_size';\nSHOW VARIABLES LIKE 'query_cache_size';\n```",{"type":39,"title":93,"body":94},"Accès distant sécurisé","Par défaut, MariaDB écoute uniquement sur `127.0.0.1` — c'est la configuration sécurisée par défaut. Pour les accès depuis une application sur un autre serveur, deux approches existent.\n\n**Option 1 — Tunnel SSH (recommandée, sans ouvrir le port 3306)**\n\nDepuis votre machine locale ou votre serveur applicatif :\n\n```bash\nssh -L 3306:127.0.0.1:3306 -N root@\u003Cip-vps-mariadb>\n```\n\nVotre application se connecte ensuite à `127.0.0.1:3306` localement — le tunnel SSH chiffre le trafic. Ajoutez `-f` pour mettre le tunnel en arrière-plan.\n\n**Option 2 — Connexion inter-VPS avec allowlisting IP**\n\nSi votre application tourne sur un autre VPS ServOrbit (ex. : un VPS applicatif distinct du VPS base de données), ouvrez le port uniquement pour l'IP privée de ce serveur :\n\n```bash\n# Dans \u002Fetc\u002Fmysql\u002Fconf.d\u002Fnetwork.cnf\n[mysqld]\nbind-address = 0.0.0.0\n```\n\n```bash\n# Autoriser uniquement l'IP du serveur applicatif\nufw allow from \u003Cip-app> to any port 3306\n```\n\nCréez l'utilisateur MariaDB en limitant son origine à l'IP du serveur applicatif :\n\n```sql\nCREATE USER 'app'@'\u003Cip-app>' IDENTIFIED BY 'mot_de_passe_fort';\nGRANT ALL PRIVILEGES ON mon_app.* TO 'app'@'\u003Cip-app>';\nFLUSH PRIVILEGES;\n```\n\nNe créez jamais un compte `'user'@'%'` (wildcard d'hôte) : cela autorise la connexion depuis n'importe quelle IP — si le port 3306 venait à s'ouvrir par erreur, le compte serait directement accessible depuis Internet.",{"type":39,"title":96,"body":97},"Dépannage","Voici les quatre erreurs les plus fréquentes lors de l'exploitation de MariaDB sur VPS, et leur résolution.\n\n**1. `Can't connect to local MariaDB server through socket`**\n\nLe service MariaDB n'est pas démarré ou le socket est introuvable.\n\n```bash\nsystemctl status mariadb\nsystemctl start mariadb\n```\n\nSi le service refuse de démarrer, lisez les journaux :\n\n```bash\njournalctl -xe -u mariadb --no-pager | tail -40\n```\n\nCause fréquente : `innodb_buffer_pool_size` trop grand pour la RAM disponible — MariaDB s'arrête immédiatement sans message évident. Réduisez la valeur dans `\u002Fetc\u002Fmysql\u002Fconf.d\u002Fperformance.cnf`.\n\n**2. `Too many connections`**\n\nLe nombre de connexions simultanées atteint la limite. Augmentez `max_connections` dans `\u002Fetc\u002Fmysql\u002Fconf.d\u002Fperformance.cnf` puis rechargez :\n\n```bash\nsystemctl reload mariadb\n```\n\nInspectez les connexions actives avant d'augmenter : `SHOW PROCESSLIST;` dans le shell MariaDB. Des centaines de connexions inactives signalent souvent un pool de connexions mal configuré côté application.\n\n**3. `Table '\u003Cnom>' is marked as crashed`**\n\nUne table MyISAM est corrompue (crash système, coupure d'alimentation). Réparez-la :\n\n```bash\nmysqlcheck -u root -p --repair mon_app nom_de_la_table\n```\n\nSi vous utilisez InnoDB (cas général), cette erreur est rare ; une corruption InnoDB se résout par restauration de sauvegarde. C'est une raison supplémentaire d'activer les sauvegardes automatisées.\n\n**4. `Access denied for user 'root'@'localhost'`**\n\nMot de passe root oublié ou plugin d'authentification modifié. Réinitialisez en mode sans authentification :\n\n```bash\nsystemctl stop mariadb\nmysqld_safe --skip-grant-tables &\nmariadb -u root\n```\n\nPuis dans le shell MariaDB :\n\n```sql\nFLUSH PRIVILEGES;\nALTER USER 'root'@'localhost' IDENTIFIED BY 'nouveau_mot_de_passe';\nFLUSH PRIVILEGES;\nEXIT;\n```\n\nRelancez MariaDB normalement : `systemctl restart mariadb`.",{"type":99,"title":100,"headers":101,"rows":106},"comparison","MariaDB 11.4 LTS vs MariaDB 10.11 LTS vs MySQL 8.0",[102,103,104,105],"Critère","MariaDB 11.4 LTS","MariaDB 10.11 LTS","MySQL 8.0",[107,111,116,121,126,130,135],[108,109,109,110],"Licence","GPL v2 (communautaire)","GPL v2 \u002F Commercial (Oracle)",[112,113,114,115],"Support jusqu'à","2028+ (LTS, mai 2024)","Février 2028 (LTS)","Avril 2026 (EOL proche)",[117,118,119,120],"Client CLI","`mariadb` (mysql déprécié)","`mariadb` et `mysql`","`mysql`",[122,123,124,125],"Performance InnoDB","Améliorée (threadpool natif)","Stable et éprouvée","Bonne, optimisée Oracle",[127,128,128,129],"Compatibilité MySQL","Très haute (drop-in)","Référence",[131,132,133,134],"JSON natif","Oui (MariaDB 10.2+)","Oui","Oui (colonnes JSON)",[136,137,138,139],"Recommandation","Nouveaux projets, migration MySQL 8.0","Production existante, stabilité maximale","Si dépendance Oracle\u002Fcloud spécifique",{"type":141,"body":142},"tip","Ne jamais exposer le port 3306 directement sur Internet : configurez votre pare-feu pour n'autoriser les connexions MariaDB qu'en local (127.0.0.1) ou via un tunnel SSH. Activez également le journal des requêtes lentes (`slow_query_log = 1`, `long_query_time = 1`) dès le départ pour identifier rapidement les requêtes à optimiser avant qu'elles n'impactent vos utilisateurs.",{"type":141,"title":144,"body":145},"La documentation officielle","Pour la configuration avancée, les options propres à l'outil et les changements de version, référez-vous à la \u003Ca href=\"https:\u002F\u002Fmariadb.com\u002Fdocs\u002F\" target=\"_blank\" rel=\"noopener noreferrer\">documentation officielle de MariaDB\u003C\u002Fa>. Ce guide couvre la mise en ligne sur VPS ServOrbit ; la documentation éditeur reste la référence pour les réglages fins.","Déployez MariaDB en quelques minutes sur un VPS Cloud ServOrbit","Profitez d'un VPS haute performance avec installation MariaDB en 1 clic, accès root complet et support inclus — formule mensuelle sans engagement, à partir de 99 DH\u002Fmois.","Lancer mon VPS Cloud","\u002Fvps-cloud",[151,169,192],{"id":152,"slug":153,"slugs":154,"title":158,"excerpt":159,"readTime":160,"views":18,"isPinned":19,"noindex":19,"publishedAt":161,"updatedAt":162,"category":163,"categories":164,"featuredImage":30,"bgImage":31,"posterImage":166,"relatedSolution":167},56,"heberger-postgresql-vps",{"fr":153,"en":155,"ar":156,"es":157},"postgresql-on-a-vps-a-reliable-and-controlled-database","postgresql-على-خادم-vps-قاعدة-بيانات-موثوقة-ومتحكم-بها","alojar-postgresql-en-un-vps","PostgreSQL sur VPS : base fiable et contrôlée","Hébergez PostgreSQL sur VPS : configuration prod, sauvegardes pgBackRest, haute disponibilité streaming, comparatif RDS\u002FSupabase\u002FNeon et dépannage OOM.",9,"2026-04-25T00:00:00+00:00","2026-10-21T15:21:37+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[165],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-postgresql-vps-poster.svg",{"categorySlug":25,"appSlug":168},"postgresql-stack",{"id":170,"slug":171,"slugs":172,"title":176,"excerpt":177,"readTime":178,"views":179,"isPinned":19,"noindex":19,"publishedAt":180,"updatedAt":181,"category":182,"categories":187,"featuredImage":30,"bgImage":31,"posterImage":189,"relatedSolution":190},41,"deployer-avec-coolify",{"fr":171,"en":173,"ar":174,"es":175},"deploy-your-applications-with-coolify-on-a-vps","نشر-تطبيقاتك-باستخدام-coolify-على-vps","desplegar-aplicaciones-con-coolify-en-un-vps","Déployer vos applications avec Coolify sur un VPS","Déployer Coolify sur un VPS : installation, configuration HTTPS, connexion Git, première application, bases de données, sauvegardes et dépannage.",12,2,"2026-05-10T00:00:00+00:00","2026-10-31T01:54:10+00:00",{"id":183,"name":184,"slug":185,"color":186,"icon":185},3,"Déploiement","deploiement","bg-success\u002F10 text-success",[188],{"id":183,"name":184,"slug":185,"color":186,"icon":185},"\u002Fblog\u002Fcovers\u002Fdeployer-avec-coolify-poster.svg",{"categorySlug":185,"appSlug":191},"coolify",{"id":193,"slug":194,"slugs":195,"title":199,"excerpt":200,"readTime":201,"views":202,"isPinned":19,"noindex":19,"publishedAt":203,"updatedAt":204,"category":205,"categories":210,"featuredImage":30,"bgImage":31,"posterImage":212,"relatedSolution":213},73,"heberger-wordpress",{"fr":194,"en":196,"ar":197,"es":198},"host-wordpress-on-your-own-vps","استضافة-wordpress-على-خادم-vps-الخاص-بك","alojar-wordpress-en-un-vps","Héberger WordPress sur votre propre VPS","Hébergez WordPress sur votre VPS pour des performances et un contrôle maximaux : Docker, MariaDB, cache, reverse proxy et SSL.",7,0,"2026-04-08T00:00:00+00:00","2026-11-09T20:55:18+00:00",{"id":201,"name":206,"slug":207,"color":208,"icon":209},"Self-hosting","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[211],{"id":201,"name":206,"slug":207,"color":208,"icon":209},"\u002Fblog\u002Fcovers\u002Fheberger-wordpress-poster.svg",{"categorySlug":207,"appSlug":214},"wordpress",true,1794270724315]