LoginSignup
1
0

【エラー対応】Next.jsとPrismaでSupabaseに繋いだら「PrismaClientInitizationError:」が出た

Last updated at Posted at 2024-02-01

背景

Next.jsで個人開発しているカレンダーアプリにアクセスすると500エラーが返ってきた。
VercelでLogsを見ると以下のエラー文があった。

PrismaClientInitizationError:
invalid prisma.event.findMany() invocation:
エラー文のスクショ

スクリーンショット 2024-01-31 18.54.24_Qiita用.png

やったこと

1. ローカルでTable plusを使って新しい接続URLのsupabaseに繋げにいけるかを確認

  • Host名、User名、Port番号が変更されていた。

  • supabase の Dashboard > プロジェクト名 > Project Settings > Database の Connection parameters を見ながら、Table PlusにDBを新規作成して入力 → 「Test」クリック

  • 緑色になったので接続を確認できた。

スクショ

スクリーンショット 2024-01-31 18.49.12_Qiita用.png

2. VercelのDB接続設定(環境変数)を更新

Settings > Environment Variables > DATABASE_URL の「・・・」 > 「Edit」
DATABASE_URLを新しく変更されたものに更新する。

しかし、そのままだと別のエラー文(PrismaClientUnknownRequestError:)が出るので、末尾に ?pgbouncer=true&connection_limit=1 を追記する

  • 変更前DATABASE_URL
postgresql://[db-user]:[db-password]@db.[project-ref].supabase.co:5432/[db-name]
  • 変更後DATABASE_URL
postgres://[db-user]:[db-password]@aws-0-[aws-region].pooler.supabase.com:6543/[db-name]?pgbouncer=true&connection_limit=1
スクショ

スクリーンショット 2024-01-31 18.59.01_Qiita用.png

3. リデプロイをする

無事、サイトにアクセスできるようになった。

反省

去年の秋から継続してsupabaseから接続文字列の更新メールが来ていたのに、内容を見ずスルーしていた。今後、翻訳して内容を確認する癖をつけたい。

参考サイト

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0