Passer au contenu principal
Certaines applications publiées plus anciennes peuvent encore être connectées à une base de données de développement qui a été créée à l’origine pour une autre application. Cela peut se produire avec des applications plus anciennes qui ont été dupliquées ou remixées sur Replit. Dans l’ancienne configuration Neon, une duplication pouvait continuer à utiliser la connexion à la base de données de l’application d’origine. Dans le cadre du passage de Replit à l’isolation complète des bases de données de développement et de production, les anciennes bases de données de développement partagées sont supprimées et les applications publiées doivent migrer vers leurs propres bases de données de production. Utilisez ce guide si votre application publiée affiche des erreurs de connexion à la base de données, ou si DATABASE_URL dans le panneau Secrets pointe encore vers neon.tech.
L’ancienne base de données partagée sera fermée le 10 avril. Mettez à jour votre application publiée avant cette date pour éviter des interruptions de service ou une perte de données permanente.

Avant de commencer

Votre application publiée a besoin de sa propre base de données de production. La base de données de développement affichée dans le panneau Base de données ne doit pas être utilisée directement par les applications publiées.
Panneau Base de données affichant la base de données de développement
Pour résoudre ce problème, déterminez d’abord dans quelle situation vous vous trouvez :
  • Cas 1 : Les données dont vous avez besoin sont déjà présentes dans la base de données affichée dans le panneau Base de données de votre application.
  • Cas 2 : Le panneau Base de données n’affiche pas les données dont vous avez besoin, car votre application publiée utilise encore l’ancienne base de données de développement partagée.

Comment savoir si votre application publiée utilise une base de données partagée ?

Votre application publiée est concernée si l’un des éléments suivants est vrai :
  • Votre application publiée affiche des erreurs de connexion à la base de données après la mise à niveau de la base de données
  • Votre application a été remixée depuis une autre application qui avait une base de données avant le 9 janvier 2026

Comment vérifier si votre application publiée utilise la base de données partagée de l’application source ?

Étape 1 : Ouvrir le panneau Base de données dans l’application source

Panneau Secrets affichant DATABASE_URL
Récupérez la valeur de NEON_DATABASE_URL ou de DATABASE_URL si NEON_DATABASE_URL n’existe pas.
Toutes les applications concernées n’auront pas NEON_DATABASE_URL. Si elle est absente, cela signifie généralement que vous devez utiliser le DATABASE_URL actuel des Secrets de l’application publiée s’il pointe encore vers neon.tech.

Étape 2 : Ouvrir le panneau Publier dans l’application publiée

Secrets de l'application publiée affichant DATABASE_URL
Pour vérifier l’URL de la base de données de votre application publiée :
  1. Ouvrez votre application dans Replit
  2. Ouvrez le panneau Publication
  3. Ouvrez Ajuster les paramètres
  4. Ouvrez Secrets
  5. Recherchez DATABASE_URL

Étape 3 : Comparer l’URL de la base de données de l’application source à l’étape 1 et l’application remixée à l’étape 2

Si elles sont identiques, votre application publiée utilise une base de données de développement Neon partagée provenant de l’application source.

Comment copier les données de l’application source vers l’application publiée ?

Après avoir confirmé que votre application publiée utilise la base de données de développement partagée de l’application source, l’étape suivante consiste à transférer les données nécessaires vers l’application publiée. Il existe deux scénarios à considérer :
  • Cas 1 : Le panneau Base de données dans l’application publiée contient déjà les données requises.
  • Cas 2 : Le panneau Base de données dans l’application publiée ne contient pas les données requises.

Cas 1 : Le panneau Base de données affiche déjà les données dont vous avez besoin

C’est le chemin le plus simple si les données dont vous avez besoin sont déjà visibles dans le panneau Base de données de votre application.

Étape 1 : Confirmer la présence des données

Base de données affichant mes lignes de données
Ouvrez le panneau Base de données dans l’application publiée et assurez-vous que les tables et les données dont vous avez besoin sont présentes. Si vous ne voyez pas les données dont vous avez besoin dans le panneau Base de données, faites une pause ici. Vous devrez suivre les étapes du Cas 2 pour migrer vos données correctement.

Étape 2 : Publier ou republier avec une base de données de production

  1. Ouvrez votre application dans l’espace de travail
  2. Sélectionnez Publier ou Republier
  3. Activez Créer une base de données de production
  4. Activez Configurer votre base de données de production avec vos données de développement actuelles
  5. Terminez le processus de publication
La publication crée une nouvelle version de votre application publiée et définit automatiquement son DATABASE_URL sur la nouvelle base de données de production. Vous n’avez pas besoin de mettre à jour ce secret manuellement lors de ce processus.
Paramètres de publication affichant les options Créer une base de données de production
La copie vers la production écrase toutes les données de production existantes. Consultez Bases de données de production pour plus de détails sur la restauration ou la gestion de votre base de données de production.

Étape 3 : Vérifier l’application publiée

Ouvrez votre application publiée et confirmez que vos données sont accessibles et que l’application fonctionne correctement.

Cas 2 : Le panneau Base de données dans l’application publiée n’affiche pas les données dont vous avez besoin

Suivez ces étapes pour exporter les données si vous ne voyez pas les données nécessaires dans le panneau Base de données de votre application publiée. Si votre application publiée est encore connectée à une base de données d’une autre application, vous verrez un avertissement “base de données externe détectée” dans le panneau Base de données.
Panneau Base de données affichant la détection d'une base de données externe
Si des personnes utilisent encore votre application et enregistrent de nouvelles données, planifiez une courte fenêtre de maintenance avant d’exporter les données.

Étape 1 : Exporter les données de l’ancienne base de données

Exemple pg_dump
Ouvrez le Shell dans votre espace de travail et exécutez :
pg_dump -Fc "database_url" --no-owner --no-privileges -f backup.dump
database_url est l’URL de la base de données obtenue à l’Étape 1 : Ouvrir le panneau Base de données dans l’application source.

Étape 2 : Supprimer l’ancien DATABASE_URL des Secrets de votre application

Exemple de panneau Secrets
  1. Ouvrez l’outil Secrets dans l’espace de travail
  2. Trouvez l’ancien DATABASE_URL
  3. Supprimez-le
  4. Actualisez la page ou rouvrez le panneau Base de données
Après cela, votre application devrait cesser de pointer vers l’ancienne base de données partagée et utiliser à nouveau sa base de données de développement actuelle.

Étape 3 : Importer les données dans la base de données de développement actuelle de votre application

Exemple pg_restore
Une fois le secret DATABASE_URL ancien supprimé, la base de données de développement actuelle de votre application devrait être à nouveau disponible en tant que $DATABASE_URL dans l’espace de travail. Retournez au Shell dans l’espace de travail et exécutez :
pg_restore --clean --if-exists --single-transaction --no-owner --no-privileges --exit-on-error -d "$DATABASE_URL" backup.dump
Cela charge les données exportées dans la base de données de développement actuelle de votre application.

Étape 5 : Suivre le Cas 1 pour publier ou republier avec une base de données de production

Une fois que le panneau Base de données affiche les données correctes, suivez le Cas 1 pour publier ou republier avec Créer une base de données de production et copier ces données en production.

Étape 6 : Vérifier l’application publiée

Export réussi
Ouvrez votre application publiée et confirmez que vos données sont accessibles et que l’application fonctionne correctement.

Résolution des problèmes

L’importation échoue car des tables existent déjà

La commande pg_restore --clean --if-exists ci-dessus supprime et recrée les objets correspondants du dump avant de les restaurer.

L’importation échoue avec des erreurs de rôle ou de politique

Si votre base de données utilise des rôles PostgreSQL personnalisés ou des politiques basées sur les rôles, l’importation peut échouer car ces rôles n’existent pas encore dans la nouvelle base de données. La migration Helium automatique de Replit tente de recréer des stubs de rôles avant la restauration, mais le processus manuel ci-dessus ne le fait pas. Si vous rencontrez des erreurs liées aux rôles lors de pg_restore, contactez le support pour obtenir de l’aide.

J’ai déjà corrigé l’application

Si votre application publiée possède déjà sa propre base de données de production et fonctionne correctement, vous n’avez rien d’autre à faire.

Besoin d’aide supplémentaire ?

Si vous n’êtes pas sûr du cas qui s’applique à votre application, ou si vous rencontrez des problèmes lors de la migration, contactez le support.

Documentation connexe