执行npx prisma db push时遇P1013错误:MongoDB连接字符串无效
解决Prisma连接MongoDB时的Error P1013问题
当执行npx prisma db push遇到Error P1013,核心原因是MongoDB连接字符串里的密码包含未做URL编码的特殊字符,导致Prisma无法正确解析连接地址。
解决步骤:
- 打开项目根目录的
.env文件,找到DATABASE_URL配置项,格式类似:mongodb+srv://your_username:your_password@cluster0.kmq4a.mongodb.net/RealPropDB?retryWrites=true&w=majority - 提取密码部分,对其中的特殊字符(比如@、$、!、%、&等)做URL编码:
- 举例:密码
P@ssw0rd$编码后变为P%40ssw0rd%24
- 举例:密码
- 将编码后的密码替换回
DATABASE_URL对应位置 - 保存文件后重新执行
npx prisma db push
额外提示:
如果不确定哪些字符需要编码,直接把整个密码通过URL编码工具处理后替换即可。替换后可以先用MongoDB Compass测试连接是否正常,再用Prisma执行命令。
内容的提问来源于stack exchange,提问作者Sandeep Nehte
相关产品推荐
相关产品推荐

