Installation automatique de PostgreSQL : pool de connexions et guide de sauvegarde
Création d'une base de données PostgreSQL avec VDS Panel, installation du pool de connexions PgBouncer, processus de sauvegarde et de restauration automatiques. Dites adieu aux commandes psql manuelles.
PostgreSQL est le joyau du monde des bases de données open source. Fiable, évolutif et conforme aux normes. Cependant, en production, une installation efficace, la configuration du pool de connexions, les processus de sauvegarde et de restauration nécessitent des informations. Bien plus qu’une simple commande P0.
Dans cet article, nous expliquerons comment VDS Panel gère automatiquement PostgreSQL, comment il évolue avec PgBouncer et sa stratégie de sauvegarde.
Nouveau projet = nouvelle base de données
Configuration PostgreSQL en flux traditionnel :
P0
Ensuite, dans l’environnement de votre application :
P1
Dans le panneau VDS : Cochez la case “Ajouter PostgreSQL” lors de l’ajout du projet. Le reste est automatique :
- 01L'utilisateur est crééUtilisateur nommé myapp_user avec un mot de passe fort de 32 caractères. Le mot de passe n'est plus exposé en dehors de la base de données.
- 02La base de données est crééeUne base de données nommée myapp_production est attribuée à un nouvel utilisateur en tant que propriétaire.
- 03Les autorisations de schéma public sont accordéesPour PG 15+, les PRIVILÈGES PAR DÉFAUT sont également définis. Les migrations Liquibase/Flyway fonctionnent sans aucun problème.
- 04DATABASE_URL est injecté dans envLorsque le conteneur d'application démarre, il voit la chaîne de connexion dans l'environnement de processus. Ce n'est écrit nulle part dans le fichier ou dans git.
- 05Le pool de connexions PgBouncer est enregistréS'il s'agit d'un projet à haut débit, la connexion est acheminée via PgBouncer. Détails ci-dessous.
Pourquoi PgBouncer est-il nécessaire ?
PostgreSQL crée un processus distinct pour chaque connexion. Si une API Node.js reçoit 100 requêtes simultanées, il y aura 100 processus PG. Cela crée une surcharge de mémoire et de changement de contexte.
PgBouncer regroupe les liens. Mappe 1 000 liens d’application vers 20 à 50 liens PG réels. Conclusion:
VDS Panel yüksek trafikli projeler için otomatik PgBouncer kurar. Bağlantı URL’i:
P2
L’application n’en est même pas consciente ; Il utilise la même interface, mais le pool de connexions s’exécute en arrière-plan.
Le mode pool P0 de PgBouncer ne prend pas en charge les instructions préparées et les variables de session. Si votre application utilise P1 ou P2, utilisez le mode P3 (débit légèrement inférieur mais compatibilité totale).
Sauvegarde automatique
VDS Panel vérifie votre base de données toutes les 15 minutes et effectue une sauvegarde complète quotidiennement :
- Dump de la base de données avec pg_dump —format=custom
- Cryptage avec age ou gpg (avec clé publique)
- Téléchargement S3 ou R2 en option (reprise après sinistre)
- Rétention de 30 jours, les anciennes sauvegardes sont automatiquement effacées
- Le fichier local est conservé en cas d’échec du téléchargement
Vous pouvez afficher la liste des sauvegardes et restaurer n’importe quelle sauvegarde à partir du panneau.
Vous téléchargez la clé publique d’âge sur le panneau. La clé privée ne reste que chez vous. Même le panneau ou un attaquant ne peut pas déchiffrer les sauvegardes. Assurez-vous de sauvegarder la clé hors ligne ; Si vous le perdez, vous perdez l’accès à vos sauvegardes.
Restauration : restauration
Une migration s’est mal passée, les données ont été corrompues. Depuis le panneau :
- “Base de données” → onglet “Sauvegardes”
- Sélectionnez la date de sauvegarde souhaitée
- Bouton “Restaurer”
Panneau 4 :
- Ferme les connexions existantes (mode maintenance)
- Stocke les données actuelles sous P0
- Crée une nouvelle base de données à partir d’une sauvegarde
- Redirige l’application vers une nouvelle base de données
- Ouvre les liens
Temps total ~ 30 secondes (pour les petites bases de données). Quelques minutes pour les grosses bases de données.
Gestion des migrations
Liquibase, Flyway, Prisma, Drizzle, TypeORM, quel que soit l’outil de migration que vous utilisez, le panel résout automatiquement les problèmes de propriété des tables Liquibase/Flyway :
- Liquibase/Flyway crée une table avec le superutilisateur Postgres
- L’utilisateur de l’application ne peut pas accéder à ces tables (problème de propriété)
- Le panneau le détecte et transfère automatiquement la propriété
Sinon, vous obtiendrez l’erreur « autorisation refusée pour la table » ; Le panneau résout ce problème courant.
PostgreSQL sur Kubernetes (CNPG)
Si le module K3s est actif, CNPG (opérateur CloudNativePG) peut être utilisé pour PostgreSQL de production. Avantages :
- Basculement automatique (la veille prend le relais en cas de panne principale)
- Réplication en streaming (répliques en lecture)
- Sauvegarde à chaud (sauvegarde sans temps d’arrêt)
- Suivi de l’intégration
- Entretien programmé
Il installe CNPG en un clic avec le module VDS Panel K3s. Il est idéal pour les scénarios de production nécessitant une haute disponibilité.
##Surveillance
Panneau pour chaque instance PostgreSQL :
- Nombre de connexions en direct (utilisées/max)
- Performances des requêtes (détection lente des requêtes)
- Utilisation du disque
- Dimensions des tableaux
- Retard de réplication (le cas échéant)
- Statut de sauvegarde
P0 par défaut ; Les requêtes de plus de 500 ms sont enregistrées. Vous remarquerez immédiatement des requêtes lentes.
Isolation
Côté panel, chaque projet s’exécute dans sa propre base de données :
- Le projet A ne peut pas accéder à la base de données du projet B
- Utilisateur séparé, mot de passe séparé, schéma séparé
- Les sauvegardes peuvent être cryptées dans des fichiers séparés avec des clés différentes
- La suppression n’affecte que la base de données de ce projet
Pour les scénarios d’hébergement mutualisé, cette isolation est essentielle.
Conclusion
La production PostgreSQL est un travail qui prend des heures s’il est effectué manuellement : création d’utilisateur/base de données, attribution d’autorisations, configuration du pool de connexions, planification des sauvegardes, tests de restauration, surveillance. VDS Panel gère ces étapes automatiquement et vous permet de les gérer depuis l’interface du panneau.
Il vous suffit de cocher la case “Ajouter PostgreSQL” lors de l’ajout de votre premier projet. Le reste est terminé en 4 secondes. Vous pouvez consulter la page d’accueil pour les détails du module de base de données ou partager votre scénario d’installation à partir du formulaire de contact.
Vous pourriez aussi aimer ceux-ci
Comparatif PostgreSQL, MySQL, MongoDB : quelle base de données pour quel projet ?
Comparaison de bases de données open source. Points forts, performances, cas d'utilisation de PostgreSQL, MySQL, MariaDB, MongoDB et Redis. Guide de sélection selon votre type de projet.
commencer à lireStratégie de sauvegarde VPS et reprise après sinistre : règle 3-2-1
Comment protégez-vous votre serveur en cas de sinistre ? Sauvegarde cryptée automatique, règle de sauvegarde 3-2-1, processus de test et de restauration, cibles RTO et RPO.
commencer à lireSouhaitez-vous l'essayer sur votre propre serveur ?
Contactez-nous via le formulaire de contact et préparons un plan licence + installation adapté à votre scénario d'utilisation.