Passer au contenu principal
Replit met à niveau les bases de données de développement de Neon (un fournisseur PostgreSQL serverless tiers) vers Helium, l’infrastructure PostgreSQL gérée par Replit. Cette mise à niveau est automatique, s’exécute une seule fois par application et préserve toutes vos données.
Cette mise à niveau s’applique uniquement aux bases de données de développement. Les bases de données de production utilisées par vos applications déployées ne sont pas affectées dans la plupart des cas. Cependant, si votre application déployée partage une base de données de développement avec une autre application (courant dans les anciennes applications dupliquées ou remixées), consultez Corriger une application publiée utilisant une base de données partagée pour les étapes importantes.

Ce qui change

La mise à niveau déplace votre base de données de développement de l’infrastructure Neon vers Helium, qui s’exécute directement sur la plateforme Replit. Voici ce que cela signifie pour vous :
  • Latence réduite : Votre base de données s’exécute sur l’infrastructure Replit aux côtés de votre application, réduisant les temps de connexion
  • Plus de stockage : Votre limite de stockage passe de 10 Go à 20 Go
  • 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 manière
  • Connexion transparente : Votre variable d’environnement DATABASE_URL est automatiquement mise à jour pour pointer vers Helium
  • Connexion Neon sauvegardée : Votre ancienne chaîne de connexion Neon est sauvegardée en tant que NEON_DATABASE_URL dans vos Secrets pour référence. L’ancienne base de données Neon n’est plus utilisée par votre application après la mise à niveau et est planifiée pour suppression après une période de grâce temporaire.
Pour une comparaison complète entre l’ancienne base de données Neon et la nouvelle base de données Replit — y compris les différences en matière de facturation, de capacités de restauration, de sécurité des connexions et de comportement lors du remix — consultez Base de données de développement héritée.

Ce à quoi s’attendre pendant la mise à niveau

La mise à niveau s’exécute automatiquement lorsque vous ouvrez votre application Replit dans l’espace de travail.
  1. Un écran de progression apparaît avec le message “Mise à niveau de votre base de données”
  2. Vos données sont copiées de manière sécurisée de Neon vers Helium. Aucune donnée n’est modifiée ni perdue pendant le transfert.
  3. La durée dépend de la taille de votre base de données — cela peut prendre de quelques minutes à quelques heures pour les grandes bases de données
  4. Vous pouvez garder l’onglet ouvert ou le fermer et revenir plus tard
  5. Lorsque la mise à niveau est terminée, une boîte de dialogue de confirmation apparaît : “Nous avons mis à niveau votre base de données !”
Si la mise à niveau rencontre un problème, elle est automatiquement ignorée afin que vous puissiez continuer à travailler. La mise à niveau sera réessayée la prochaine fois que vous ouvrirez votre application.

Que faire après la mise à niveau

Pour la plupart des développeurs, aucune action n’est requise. Votre application continue de fonctionner comme avant.
Si votre code se connecte à la base de données en utilisant la variable d’environnement DATABASE_URL, aucune modification n’est nécessaire. La variable est automatiquement mise à jour pour pointer vers votre nouvelle base de données Helium.
Examinez les points suivants si l’un d’eux s’applique à votre application :
  • Chaînes de connexion Neon codées en dur : Si votre code référence directement une chaîne de connexion neon.tech, mettez-la à jour pour utiliser la variable d’environnement DATABASE_URL à la place — process.env.DATABASE_URL en JavaScript ou os.environ['DATABASE_URL'] en Python. Consultez Connecter votre application à une base de données SQL pour des exemples.
  • Rôles PostgreSQL personnalisés : Si vous avez créé des rôles de base de données personnalisés sur Neon, ces rôles et leurs permissions sont migrés automatiquement. Cependant, les mots de passe des rôles ne peuvent pas être copiés — vous devrez réinitialiser les mots de passe pour tous les rôles personnalisés sur la nouvelle base de données Helium.
  • Variables d’environnement PG individuelles : Les variables d’environnement PGHOST, PGPORT, PGUSER et PGPASSWORD sont supprimées après la mise à niveau. Utilisez plutôt la chaîne de connexion DATABASE_URL, qui contient toutes les informations nécessaires pour se connecter.

Résolution des problèmes

Erreurs de connexion SSL après la mise à niveau

Après la mise à niveau, vous pouvez voir des erreurs de connexion comme The server does not support SSL connections ou une déconnexion inattendue du socket. Cela se produit lorsque votre code de connexion à la base de données force une liaison SSL. Neon exigeait SSL pour toutes les connexions, mais Helium s’exécute localement aux côtés de votre application et n’utilise pas SSL. Pour résoudre ce problème, rendez le paramètre SSL de votre code de connexion conditionnel à l’environnement. Cela garantit que votre application se connecte sans SSL en développement (Helium) et avec SSL en production (où votre base de données de production peut toujours l’exiger).
// Avant (ne fonctionne plus après la mise à niveau)
const pool = new Pool({
  connectionString: process.env.DATABASE_URL,
  ssl: { rejectUnauthorized: false },
});

// Après (fonctionne en développement et en production)
const pool = new Pool({
  connectionString: process.env.DATABASE_URL,
  ssl:
    process.env.NODE_ENV === "production"
      ? { rejectUnauthorized: false }
      : false,
});
Si vous utilisez un ORM comme Drizzle, Prisma ou Sequelize, consultez sa documentation pour savoir comment configurer les paramètres SSL de manière 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.

Application déployée utilisant une base de données partagée

Les anciennes applications dupliquées ou remixées sur Replit peuvent partager une base de données de développement avec l’application d’origine. Dans l’ancien système Neon, la duplication d’une application copiait la DATABASE_URL de l’application d’origine, ce qui signifiait que les deux applications et leurs versions publiées se connectaient à la même base de données. Après la mise à niveau de la base de données, l’ancienne base de données Neon de l’application d’origine est désactivée. Si votre application publiée utilise toujours cette URL de base de données partagée, votre application publiée peut cesser de fonctionner ou perdre l’accès à ses données.
La base de données partagée sera fermée le 10 avril. Mettez à jour votre application publiée avant cette date pour éviter une perte de données permanente.

Que faire ensuite

Si votre application publiée est concernée, suivez le guide étape par étape dédié : Ce guide couvre :
  • Comment confirmer si votre application publiée utilise encore l’ancienne connexion Neon
  • Quand utiliser Publier ou Republier avec Créer une base de données de production
  • Comment exporter et importer manuellement les données si votre application publiée dépend encore de l’ancienne base de données partagée
  • Mises en garde importantes concernant les interruptions de service, les écritures actives et les rôles PostgreSQL personnalisés

Foire aux questions

Oui. Vos données sont copiées de Neon vers Helium — elles ne sont pas déplacées ni supprimées pendant le transfert. La base de données Neon d’origine est préservée jusqu’à ce que la mise à niveau se termine avec succès. Aucune donnée n’est modifiée ni perdue.
La mise à niveau s’exécute automatiquement lorsque vous ouvrez votre application Replit. Si elle rencontre un problème, elle est automatiquement ignorée et vous pouvez continuer à travailler normalement. La mise à niveau sera réessayée la prochaine fois que vous ouvrirez l’application.
Si la mise à niveau échoue, elle est automatiquement ignorée afin que vous puissiez continuer à utiliser votre application avec la base de données Neon existante. Le système réessaiera la mise à niveau la prochaine fois que vous ouvrirez votre application. Si le problème persiste après plusieurs tentatives, contactez le support pour obtenir de l’aide.
Après la mise à niveau, DATABASE_URL pointe vers votre nouvelle base de données Helium au lieu de Neon. Votre ancienne chaîne de connexion Neon est sauvegardée en tant que NEON_DATABASE_URL dans les Secrets de votre application. Si votre code utilise DATABASE_URL pour se connecter, aucune modification n’est nécessaire — la variable est mise à jour automatiquement.
Ces variables d’environnement individuelles sont supprimées après la mise à niveau. Helium fournit vos informations de connexion via la variable d’environnement DATABASE_URL, qui contient toutes les informations dont votre application a besoin pour se connecter. Mettez à jour tout code qui référence ces variables individuelles pour utiliser DATABASE_URL à la place.
Votre ancienne chaîne de connexion Neon est sauvegardée en tant que NEON_DATABASE_URL dans les Secrets de votre application pour référence. Dans la plupart des cas, l’ancienne base de données Neon n’est plus utilisée après la mise à niveau et est planifiée pour suppression le 10 avril.Si votre application déployée utilisait une ancienne base de données Neon partagée d’une application dupliquée ou remixée, cette base de données Neon peut encore être temporairement disponible afin que vous puissiez exporter les données et migrer vers votre propre base de données de production. Cet accès est temporaire, et la base de données partagée sera toujours supprimée le 10 avril, alors mettez à jour votre application publiée dès que possible.Si NEON_DATABASE_URL n’est pas disponible dans vos Secrets et que vous avez besoin d’aide pour récupérer l’ancienne chaîne de connexion, contactez le support.
Dans la plupart des cas, non — les bases de données de production sont gérées séparément et ne font pas partie de cette mise à niveau. Cependant, si votre application publiée utilise directement l’URL de la base de données de développement (au lieu d’une base de données de production séparée), la mise à niveau peut affecter votre application publiée. C’est le cas le plus courant dans les anciennes applications dupliquées ou remixées, où la duplication partageait la base de données de l’application d’origine. Consultez Corriger une application publiée utilisant une base de données partagée pour savoir comment résoudre ce problème.

Étapes suivantes