Skip to main content
すべてのReplit Appは2つのデータベースを使用します。開発データベースは、構築中にあなたとAgentが実験を行う場所です。本番データベースは、公開したアプリを動かす実際のデータを保存し、構築を続けている間も実際のデータを安全に保ちます。
本番データベース管理インターフェース

比較

Agentは本番データベースを変更できません。この制限は、本番データベースを安全に保つために設けられています。Agentは開発データベースを編集できます。公開時に、Agentが開発データベースの構造に加えた変更(列やテーブルの追加・削除)は本番データベースに適用されます。本番データはいつでも手動で編集できます。Databaseツールを開き、本番データベースを選択してMy Dataを開き、Editを切り替えてください。

公開時に本番データベースを作成する

公開したアプリには、構築中に使用する開発データベースとは別に、専用の本番データベースが用意されます。
  • 現在のインフラストラクチャ(Helium): Replitが公開時に必要に応じて本番データベースを作成します。特別な設定は不要です。
  • レガシーNeon開発データベース: 公開設定から本番データベースを作成します。公開中にProduction database settingsを開き、Create production databaseをオンにします。必要に応じてSet up your production database with your current development dataもオンにすると、現在の開発データをコピーできます。
Create production databaseオプションを表示する発行設定

PublishingのProduction database settings

開発データを本番にコピーするのは、そのデータがライブアプリで安全に使用できる場合のみにしてください。開発データにはテストアカウント、サンプルレコード、または不完全なコンテンツが含まれている場合があります。
公開後、公開したアプリは本番データベースを使用し、Project Editorは引き続き開発データベースを使用するため、今後の開発における変更がライブデータに直接影響することはありません。

本番データベースへの安全な変更

データベースの変更を含む更新を公開する際、ダウンタイムやデータ損失を避けるために、慎重な計画が必要な変更もあります。
公開中に、公開したアプリで短いダウンタイムが発生することがあります。データベースの変更を適用する際、競合を防ぎデータを保護するために、アプリを一時的に停止する必要がある場合があります。
以下の種類の変更は、通常特別な注意が必要です:
  • アプリケーションコードがまだ参照しているデータベース列の削除
  • 既存のコードが処理できない方法での列のデータ型の変更
  • デフォルト値なしで既存テーブルに必須フィールドを追加すること
  • 既存のクエリを壊すテーブルや列の名前変更
  • 既存のアプリケーションロジックを拒否する可能性のある制約の変更

デプロイメントプレビューで変更をテストする

デプロイメントプレビューは、実際のユーザーに影響を与える前にデータベースの変更やアプリケーションの更新をテストできる、一時的で分離された本番環境のコピーです。次のような用途に使用します:
  • データベースの変更を適用した状態でも、主要なユーザーフロー全体でアプリが問題なく動作することを確認する
  • 既存のデータが正しく移行され、新しいフィールドに期待される値が含まれていることを確認する
  • クエリの応答時間にパフォーマンスの低下がないか確認する

請求とリソース使用量

本番データベースは、サーバーレスデータベースプロバイダーであるNeonを通じた使用量に基づいて課金されます。データベースは5分間非アクティブになるとアイドル状態になり、コンピュート時間の課金が一時停止され、クエリを受け取ると即座に再起動します。 Databaseツールのランディングビューには、Billing PeriodHours of Compute Usedが表示されます。データベースごとのストレージを確認するには、データベースのSettingsタブを開きます。すべてのReplit Appにわたる使用状況を確認するには、SettingsAccountAccount usageを開き、PostgreSQL StoragePostgreSQL Computeの行を展開します。 Replitがデータベースの使用量に対してどのように課金するかについては、デプロイメントとデータベースの請求を参照してください。

本番データベースの削除

削除操作は7日間の保持期間を過ぎると元に戻せません。続行する前に、重要なデータを必ずバックアップしてください。データベースには7日間のソフト削除期間があり、その間はデータベースを復元できます。サポートが必要な場合はお問い合わせください。7日を過ぎると、データベースは完全に削除され、復元できなくなります。
Databaseツールから:
  1. データベースを選択し、Settingsタブを開きます
  2. Remove databaseを選択し、Yes, Remove databaseを選択して確認します

レガシー開発データベース

2025年12月4日以前は、開発データベースはNeonでホストされていました。新しい開発データベースはすべて、Replit独自のインフラストラクチャ(Helium)でホストされています。アプリがどちらを使用しているかは、Settingsタブで確認できます。DATABASE_URLneon.techが含まれていればレガシーNeon、heliumが含まれていれば現在のインフラストラクチャです。

データベースインフラのアップグレード

Replitは開発データベースをNeonから、Replit独自のマネージドPostgreSQLインフラストラクチャであるHeliumへアップグレードしています。このアップグレードは自動的に行われ、Project Editorでアプリを開くとアプリごとに1回実行され、すべてのデータが保持されます。 変更内容:
  • 低レイテンシとストレージの増加: データベースがアプリと同じReplitインフラストラクチャ上で動作するようになり、ストレージ制限が10GBから20GBに増加します。
  • 同じデータベースエンジン: HeliumはNeonと同じバージョンのPostgreSQL 16を使用します。クエリ、スキーマ、データの動作は変わりません。
  • 接続情報の自動更新: DATABASE_URLはHeliumを指すように更新されます。以前のNeon接続文字列は、参照用としてNEON_DATABASE_URLとしてSecretsに保存されます。
  • 個別のPG変数の削除: PGHOSTPGPORTPGUSERPGPASSWORDは削除されます。代わりにDATABASE_URLを使用してください。
アップグレード中は、**「Upgrading your database」**という進捗画面が表示されます。所要時間は数分から、大規模なデータベースでは数時間かかる場合があります。タブを閉じて後で戻ってきても構いません。アップグレードで問題が発生した場合は自動的にスキップされ、次回アプリを開いたときに再試行されます。完了すると確認ダイアログが表示されます。 ほとんどのビルダーにとって、アップグレード後に特別な対応は必要ありません。以下が該当する場合は確認してください:
  • ハードコードされたNeon接続文字列: neon.tech接続文字列を参照しているコードを、代わりにDATABASE_URL環境変数を使用するように更新してください。
  • カスタムPostgreSQLロール: ロールと権限は自動的に移行されますが、ロールのパスワードはコピーできません。新しいデータベースでカスタムロールのパスワードをリセットしてください。

アップグレード後のSSL接続エラー

The server does not support SSL connectionsのようなエラーが表示される場合、接続コードがSSLハンドシェイクを強制しています。NeonはSSLを必須としていましたが、Heliumはアプリのそばでローカルに動作するためSSLを使用しません。SSLの設定を環境に応じて条件分岐させてください:
Drizzle、Prisma、SequelizeなどのORMを使用している場合は、SSL設定を条件的に構成する方法についてそのドキュメントを確認してください。同じ原則が適用されます。開発データベースではSSLを無効にし、本番では有効にします。

データベースを共有していたフォークされたアプリ

レガシーNeonシステムでは、アプリをフォークすると元のアプリのDATABASE_URLがコピーされ、両方のアプリとその公開済みバージョンが同じデータベースに接続していました。共有されていたレガシーデータベースは2026年6月8日に停止されました。公開したアプリが動作しなくなった、またはデータへのアクセスを失った場合は、共有データベースを使用する発行済みアプリの修正を参照するか、サポートに問い合わせてください。

次のステップ