You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Vercel部署项目时调用prisma.product.findMany()遇无效调用错误求助

部署Prisma+MongoDB Atlas时服务器连接超时错误解决方案

问题描述

添加Prisma后部署网站时,prisma.product.findMany()调用失败,核心报错为服务器选择超时,无可用服务器,伴随I/O错误提示received fatal alert: InternalError,错误代码P2010,Prisma客户端版本5.18.0。

完整错误栈:

PrismaClientKnownRequestError: 
Invalid `prisma.product.findMany()` invocation:
Raw query failed. Code: `unknown`. Message: `Kind: Server selection timeout: No available servers. Topology: { Type: ReplicaSetNoPrimary, Set Name: atlas-3d8clu-shard-0, Servers: [ { Address: ac-fysecpf-shard-00-01.7qknsd4.mongodb.net:27017, Type: Unknown, Error: Kind: I/O error: received fatal alert: InternalError, labels: {} }, { Address: ac-fysecpf-shard-00-00.7qknsd4.mongodb.net:27017, Type: Unknown, Error: Kind: I/O error: received fatal alert: InternalError, labels: {} }, { Address: ac-fysecpf-shard-00-02.7qknsd4.mongodb.net:27017, Type: Unknown, Error: Kind: I/O error: received fatal alert: InternalError, labels: {} } ] }, labels: {}`
    at _n.handleRequestError (/vercel/path0/node_modules/@prisma/client/runtime/library.js:121:7749)
    at _n.handleAndLogRequestError (/vercel/path0/node_modules/@prisma/client/runtime/library.js:121:7057)
    at _n.request (/vercel/path0/node_modules/@prisma/client/runtime/library.js:121:6741)
    at async l (/vercel/path0/node_modules/@prisma/client/runtime/library.js:130:9355)
    at async j (/vercel/path0/.next/server/pages/produto/[id].js:1:2826)
    at async buildStaticPaths (/vercel/path0/node_modules/next/dist/build/utils.js:786:33)
    at async /vercel/path0/node_modules/next/dist/build/utils.js:1215:110
    at async Span.traceAsyncFn (/vercel/path0/node_modules/next/dist/trace/trace.js:151:20) {
  code: 'P2010',
  clientVersion: '5.18.0',
  meta: {
    modelName: 'Product',

已排查所有配置项,谷歌未找到同类案例,已在Prisma官方仓库发起讨论。

可行解决方向

  • 检查MongoDB Atlas IP白名单:确认部署平台(如Vercel)的出口IP已加入Atlas的IP访问列表,或临时开启「允许所有IP访问」验证是否为IP限制问题。
  • 验证数据库连接字符串:确认DATABASE_URL包含正确的用户名、密码、集群地址,且启用SSL(MongoDB Atlas默认强制要求),格式符合Prisma规范。
  • 升级Prisma版本:部分旧版本存在MongoDB Atlas连接兼容性问题,尝试升级至最新稳定版。
  • 调整连接超时配置:在schema.prisma中延长连接超时时间,示例配置:
    datasource db {
      provider = "mongodb"
      url      = env("DATABASE_URL")
      connectTimeoutMS = 30000
      socketTimeoutMS = 60000
    }
    
  • 排查部署环境网络:确认部署服务器能正常访问27017端口,无防火墙或代理拦截HTTPS请求。

内容的提问来源于stack exchange,提问作者Lucas Chini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 02:59:58