Passer au contenu principal
Chaque application Replit fonctionne avec deux bases de données. La base de données de développement est l’endroit où vous et Agent expérimentez pendant la construction. La base de données de production stocke les données en direct qui alimentent votre application publiée, gardant vos données réelles en sécurité pendant que vous continuez à construire.
Interface de gestion de la base de données de production

Comparaison

Agent ne peut pas modifier la base de données de production. Cette restriction existe pour garder votre base de données de production en sécurité.Agent peut apporter des modifications à votre base de données de développement. Au moment de la publication, tous les changements que vous avez effectués avec Agent sur la structure de votre base de données de développement (ajout et suppression de colonnes ou de tables) sont appliqués à votre base de données de production.Vous pouvez modifier manuellement vos données de production : ouvrez l’outil Database, sélectionnez la base de données de production, ouvrez My Data, puis activez Enable Editing.
La publication utilise drizzle-kit pour appliquer les modifications aux tables, colonnes, index, contraintes, vues et politiques de sécurité au niveau des lignes. Elle ne copie pas les domaines, fonctions, procédures, déclencheurs ni autorisations (grants), et la prise en charge des rôles est limitée. Consultez Objets de base de données non pris en charge.

Créer une base de données de production lors de la publication

Votre application publiée obtient sa propre base de données de production, distincte de la base de données de développement que vous utilisez pendant la construction.
  • Infrastructure actuelle (Helium) : Replit crée automatiquement une base de données de production lorsque vous publiez, à condition que votre base de données de développement contienne des données.
  • Bases de données de développement Neon legacy : Vous créez la base de données de production depuis les paramètres de publication. Ouvrez Database settings pendant la publication, activez Create production database, et activez éventuellement Set up your production database with your current development data pour copier vos données de développement.
Volet de première publication avec Advanced settings développé, création automatique de la base de données de production sélectionnée et Set up your production database with your current development data cochée

Première publication : Publishing → Advanced settings → Database settings. Section des secrets de déploiement masquée.

Ne copiez des données de développement vers la production que si ces données peuvent être utilisées sans risque dans votre application en direct. Les données de développement peuvent inclure des comptes de test, des enregistrements d’exemple ou du contenu incomplet.
Après la publication, votre application publiée utilise la base de données de production tandis que l’éditeur de projet continue d’utiliser la base de données de développement, afin que les futurs changements de développement ne modifient pas directement les données en direct.

Trouver quelle base de données votre application utilise

Dans presque tous les cas, votre application publiée utilise sa base de données de production gérée par Replit : celle listée sous Production Database dans l’outil Database. Les deux bases de données utilisent une variable appelée DATABASE_URL, mais chaque environnement a sa propre valeur :
  • Éditeur de projet : Dans votre espace de travail, le Shell et les sessions d’Agent, DATABASE_URL pointe vers la base de données de développement. Replit la connecte automatiquement ; sur l’infrastructure actuelle, elle n’apparaît donc pas dans les Secrets.
  • Application publiée : Lorsque vous publiez, votre application reçoit un DATABASE_URL distinct qui pointe vers la base de données de production.
Voir REPLIT_ENVIRONMENT=production dans le Shell ne signifie pas que votre espace de travail utilise la base de données de production. Cette variable décrit la plateforme de Replit, pas votre application. Votre application publiée s’exécute avec REPLIT_DEPLOYMENT=1.

Demander à Agent de vérifier

Agent peut examiner votre code et vos Secrets, et pour la plupart des applications, il peut consulter vos données de production sans les modifier. Agent lit la production via un réplica en lecture : une copie en lecture seule de votre base de données de production, maintenue à jour. Les changements très récents peuvent mettre un instant à y apparaître. Un réplica en lecture n’est pas la même chose qu’un aperçu de publication, qui est une copie distincte et temporaire permettant de tester les changements avant de publier. Collez ce prompt dans Agent :
Prompt
Si les trois vérifications réussissent, votre application publiée utilise sa base de données de production gérée par Replit. Cela signifie que votre code lit DATABASE_URL, que Secrets ne contient aucune autre connexion à une base de données, et que les lignes les plus récentes correspondent à votre application en direct.

Vérifier dans l’outil Database et dans Publishing

1

Ouvrir votre base de données de production

Dans l’outil Database, ouvrez le menu des bases de données à côté de All Databases et sélectionnez Production.
Outil Database avec le menu des bases de données ouvert et Production en surbrillance
2

Trouver un enregistrement de votre application en direct

Ouvrez My Data et cherchez quelque chose que vous avez récemment créé dans votre application publiée, comme un nouveau compte ou une nouvelle commande. Si vous le voyez, votre application publiée écrit dans cette base de données. La production s’ouvre en lecture seule, vous pouvez donc la parcourir sans risque.
Onglet My Data de la base de données de production affichant une table customers avec la ligne la plus récente en surbrillance
3

Comparer les paramètres de connexion

Ouvrez l’onglet Settings de la base de données de production et trouvez Connection string. Ouvrez ensuite Publishing, sélectionnez Adjust settings et trouvez DATABASE_URL sous Production app secrets. Révélez chaque valeur et vérifiez que les deux pointent vers le même hôte. Pour la plupart des applications, cela signifie le même identifiant de endpoint, la partie qui commence par ep-. Une adresse groupée (pooled) ajoute -pooler après l’identifiant ; les chaînes complètes n’ont donc pas à être strictement identiques.
Onglet Settings de la base de données de production avec la Connection string en surbrillance et un exemple montrant où apparaît l'identifiant de endpoint
Paramètres de Publishing avec Production app secrets et la ligne DATABASE_URL en surbrillance
Les deux valeurs incluent le mot de passe de votre base de données. Comparez-les vous-même ; ne les collez pas dans un chat, un ticket de support ou une capture d’écran.
4

Vérifier dans Secrets la présence d'une autre base de données

Ouvrez Secrets. La connexion intégrée de Replit n’y figure pas. Si vous voyez un DATABASE_URL que vous avez ajouté vous-même, ou une autre connexion à une base de données comme SUPABASE_DATABASE_URL, votre application utilise peut-être cette base de données à la place. Demandez à Agent laquelle votre code lit. Un secret NEON_DATABASE_URL correspond à votre ancienne connexion à la base de données de développement, enregistrée lors de la mise à niveau de l’infrastructure de base de données. Votre application ne l’utilise que si votre code la lit.
Volet Secrets avec deux secrets de connexion à une base de données en surbrillance

Ce que signifient les résultats

Ces vérifications montrent comment votre application est configurée. Si votre application en direct affiche encore des données inattendues, demandez à Agent de trouver où votre code lit et écrit ces données.

Regroupement de connexions

Par défaut, les bases de données de production n’ont pas le regroupement de connexions (connection pooling) activé. Votre application se connecte directement à la base de données à l’aide de la chaîne de connexion DATABASE_URL, donc la plupart des frameworks doivent gérer leur propre pool de connexions côté client.
Chaque projet Neon inclut une chaîne de connexion directe et une chaîne de connexion groupée (pooled). Une chaîne de connexion directe ressemble à postgresql://neondb_owner:<password>@<host>.<region>.neon.tech/<db>?sslmode=require.Pour utiliser la connexion groupée, ajoutez -pooler à l’hôte : postgresql://neondb_owner:<password>@<host>-pooler.<region>.neon.tech/<db>?sslmode=require.
Si une chaîne de connexion de production a été exposée, régénérez les identifiants de votre base de données de production.

Apporter des modifications sûres à votre base de données de production

Lorsque vous publiez des mises à jour incluant des changements de base de données, Replit vous guide à travers la migration dans le volet Publish. Il signale les changements susceptibles de supprimer des données, vous permet de tester votre application sur une copie migrée de la production, et n’applique les changements qu’après votre approbation. Pour le flux complet, consultez Comment Publish met à jour votre base de données de production.
Vous pourriez constater une brève interruption de votre application publiée pendant la publication. Les changements de base de données nécessitent parfois d’arrêter temporairement votre application pour éviter les conflits et protéger vos données pendant l’application des changements.
Les types de changements suivants nécessitent généralement de la prudence :
  • Supprimer des colonnes ou des tables qui contiennent encore des données
  • Changer les types de données des colonnes, ce qui peut échouer si les valeurs existantes ne se convertissent pas
  • Ajouter des champs obligatoires sans valeurs par défaut à des tables qui contiennent déjà des lignes
  • Renommer des tables ou des colonnes : confirmez le renommage lorsque Publish vous le demande, sinon les données sont supprimées
  • Ajouter des contraintes d’unicité à des tables dont les lignes existantes pourraient les violer

Tester les changements avec un aperçu de publication

Un aperçu de publication est une copie temporaire et isolée de votre environnement de production où vous pouvez tester les changements de base de données et les mises à jour d’application avant qu’ils n’affectent les utilisateurs réels. Utilisez-le pour :
  • Vérifier que votre application fonctionne toujours avec les changements de base de données appliqués, sur l’ensemble de vos principaux parcours utilisateurs
  • Confirmer que les données existantes ont été correctement migrées et que les nouveaux champs contiennent les valeurs attendues
  • Surveiller les régressions de performance dans les temps de réponse des requêtes
Pour en créer un, sélectionnez Create preview deploy dans le volet Publish une fois votre migration validée. Consultez Prévisualisez votre application sur la copie migrée.

Facturation et utilisation des ressources

Les frais de base de données de production comprennent l’utilisation du calcul et le stockage. La base de données entre dans un état inactif après cinq minutes d’inactivité, ce qui met en pause la facturation du calcul jusqu’à la prochaine requête. Les données stockées continuent de générer des frais de stockage pendant que le calcul est inactif. La vue d’accueil de l’outil Database affiche votre Billing Period et vos Hours of Compute Used. Pour le stockage par base de données, ouvrez l’onglet Settings de la base de données. Pour voir l’utilisation sur l’ensemble de vos applications Replit, accédez à Account usage dans Settings et développez les lignes PostgreSQL Storage et PostgreSQL Compute. Pour savoir comment Replit facture l’utilisation des bases de données, consultez Facturation des déploiements et des bases de données.

Supprimer une base de données de production

Sauvegardez les données importantes avant de supprimer une base de données de production. La suppression désactive l’accès à la base de données et démarre une période de suppression réversible de sept jours.Pour récupérer une base de données supprimée par erreur, contactez le support Replit dans un délai de sept jours. Indiquez l’URL de votre projet et le moment de la suppression, mais n’incluez pas d’identifiants. Après sept jours, la base de données est définitivement supprimée.
Récupérer une base de données supprimée est différent de restaurer des lignes ou des tables supprimées. Pour les modifications de données dans une base de données existante, consultez Récupération de données.
Depuis l’outil Database :
  1. Sélectionnez la base de données, puis ouvrez l’onglet Settings
  2. Sélectionnez Remove database et confirmez en sélectionnant Yes, Remove database

Base de données de développement legacy

Avant le 4 décembre 2025, la base de données de développement était hébergée sur Neon. Toutes les nouvelles bases de données de développement sont hébergées sur l’infrastructure propre de Replit (Helium). Vous pouvez vérifier laquelle votre application utilise dans l’onglet Settings : un DATABASE_URL contenant neon.tech signifie l’infrastructure Neon legacy ; helium signifie l’infrastructure actuelle.

Mise à niveau de l’infrastructure de base de données

Replit met à niveau les bases de données de développement de Neon vers Helium, l’infrastructure PostgreSQL gérée propre à Replit. La mise à niveau est automatique, s’exécute une fois par application lorsque vous l’ouvrez dans l’éditeur de projet, et préserve toutes vos données. Ce qui change :
  • Latence plus faible et plus de stockage : Votre base de données fonctionne sur l’infrastructure Replit à côté de votre application, et votre limite de stockage passe de 10 Go à 20 Go, ou à 50 Go avec les offres Pro et Enterprise.
  • Même moteur de base de données : Helium utilise PostgreSQL 16, la même version que Neon. Vos requêtes, schémas et données fonctionnent de la même façon.
  • Mise à jour automatique de la connexion : DATABASE_URL est mis à jour pour pointer vers Helium. Votre ancienne chaîne de connexion Neon est enregistrée sous NEON_DATABASE_URL dans vos Secrets pour référence.
  • Suppression des variables PG individuelles : PGHOST, PGPORT, PGUSER et PGPASSWORD sont supprimées. Utilisez DATABASE_URL à la place.
Pendant la mise à niveau, vous verrez un écran de progression « Upgrading your database ». Cela peut prendre de quelques minutes à quelques heures pour les grandes bases de données ; vous pouvez fermer l’onglet et revenir plus tard. Si la mise à niveau rencontre un problème, elle est automatiquement ignorée et retentée la prochaine fois que vous ouvrez votre application. Une fois terminée, une boîte de dialogue de confirmation apparaît. Pour la plupart des créateurs, aucune action n’est nécessaire par la suite. Vérifiez les points suivants s’ils s’appliquent à vous :
  • Chaînes de connexion Neon codées en dur : Mettez à jour le code qui référence une chaîne de connexion neon.tech pour utiliser la variable d’environnement DATABASE_URL à la place.
  • Rôles PostgreSQL personnalisés : Les rôles et permissions migrent automatiquement, mais les mots de passe des rôles ne peuvent pas être copiés. Réinitialisez les mots de passe des rôles personnalisés sur la nouvelle base de données.

Erreurs de connexion SSL après la mise à niveau

Si vous voyez des erreurs telles que The server does not support SSL connections, votre code de connexion force une négociation SSL. Neon exigeait SSL ; Helium fonctionne localement à côté de votre application et ne l’utilise pas. Rendez le paramètre SSL conditionnel à l’environnement :
Si vous utilisez un ORM comme Drizzle, Prisma ou Sequelize, consultez sa documentation pour savoir comment configurer les paramètres SSL de façon conditionnelle. Le même principe s’applique : désactivez SSL pour la base de données de développement et activez-le pour la production.

Applications forkées ayant partagé une base de données

Sous l’ancien système Neon, forker une application copiait le DATABASE_URL de l’application d’origine, si bien que les deux applications et leurs versions publiées se connectaient à la même base de données. Les bases de données legacy partagées ont été fermées le 8 juin 2026. Si votre application publiée a cessé de fonctionner ou a perdu l’accès à ses données, consultez Corriger une application publiée utilisant une base de données partagée ou contactez le support.

Prochaines étapes