メインコンテンツへスキップ
ここでは本番データベースについてよくある質問に回答します。詳細なリファレンスは 本番データベース および SQL データベース を参照してください。
このエラーは、データベースのコンピュートエンドポイントが無効になっていることを意味します。まず、影響を受けているデータベースを特定します:
  1. Database ツールを開き、失敗しているアプリが使用しているデータベースを選択します。
  2. Unpause database ボタンが表示された場合は、それを選択します。
  3. 接続を再試行します。
エンドポイントが繰り返し無効になる場合は、アカウント使用状況と請求設定で、未払いの請求書や使用量の上限がないか確認してください。Unpause database コントロールが表示されない場合は、Secrets を変更する前に「データベースがフリーズしていて Unpause ボタンが表示されません」を参照してください。完全な診断フローについては、データベースのトラブルシューティング を参照してください。
不要です。障害がすでに status.replit.com に掲載されている場合、チームが対応中であり、チケットを提出しても修正が早まることはありません。アクティブなインシデントを開いて、進捗の通知を受け取るために更新を購読してください。データベースの問題がステータスページに掲載されていない場合は、Replit サポートにお問い合わせください。
Replit は本番データベースのポイントインタイムリカバリをサポートしています。利用可能な履歴は設定された復旧ウィンドウによって異なり、対象のプランではより長い保持期間を設定できます。リストアは欠落したテーブルだけでなくデータベース全体に影響し、新しいデータが置き換えられる可能性があります。リストアする前にデータリカバリーを確認してください。保持期間を延ばしても、保持されていなかった履歴を再作成することはできません。
まず、アプリが使用しているデータベースを確認してください。Secrets 内の DATABASE_URL は、意図的に設定した外部データベースを指している場合があります。DATABASE_URL シークレットを人目につかない場所で、Database ツールの接続文字列と比較してください。アプリが Replit 管理のデータベースを使用するはずなのに、シークレットが古い接続を指している場合、そのシークレットが正しい URL を上書きしています。その古い上書きを削除すると、アプリは再び Replit 管理の接続を使用できます。ただし、URL が異なることが意図的な場合もあるため、値が違うというだけで削除しないでください。最終手段として、アプリが Replit 管理のデータベースを使用するはずであり、古い DATABASE_URL シークレットがその接続を上書きしていることを確認済みの場合:
  1. 必要に応じて復元できるよう、既存のシークレットを安全に保存します。
  2. Secrets から、競合する DATABASE_URL エントリのみを削除します。無関係なシークレットや、意図的な外部データベース接続は残してください。
  3. リフレッシュし、Database ツールを開き直して、もう一度 Unpause database が表示されるか確認します。
  4. アプリの接続を再試行します。シークレットを削除して接続が壊れた場合は、元に戻してください。
コントロールが表示されないままの場合、または接続が引き続き失敗する場合は、プロジェクト URL と実施した確認内容を添えて Replit サポートにお問い合わせください。接続文字列は共有しないでください。
アプリが同時に開いているデータベース接続数がプールの許容量を超えています。よくある原因:
  • リクエストごとに接続が閉じられていない
  • トラフィックの急増
  • 接続を保持し続けるスロークエリ
ほとんどのフレームワークは、リクエストごとに新しい接続ではなく、共有の接続プールを 1 つ使用することを想定しています。最も早い解決策として、新しい Agent チャットを開き、エラーを説明して、アプリがデータベース接続をどのように管理しているか確認するよう Agent に依頼してください。
Replit は開発データベースと本番データベースを分離しているため、テストの変更がライブデータに影響しません。公開すると、Replit は開発データベースと本番データベースのスキーマの差分を検出し、ビルド中にマイグレーションを自動的に実行します。マイグレーションを手動で実行するには、Database ツールで本番データベースを選択し、SQL コンソールを使用します。SQL を手動で実行する方法はサポート対象外のフローであり、サポートは限定的です。続行する前に本番環境に不足しているオブジェクトを適用するを確認してください。公開時に本番データベースを作成する および データベースのトラブルシューティング を参照してください。
請求が最新でも、エンドポイントが無効になっている可能性は否定できません。影響を受けているデータベースについて、上記の一時停止解除の手順に従ってください。一時停止の解除に失敗する場合や問題が繰り返し発生する場合は、プロジェクト URL、エラー、実施した手順を添えて Replit サポートにお問い合わせください。

解決しない場合は?

データベースに関する質問がここで回答されていない場合は、Replit サポートにお問い合わせください。