🔓

Prismaで記号の入ったDATABASE_URLを扱いたい場合のポイント

2022/01/20に公開

小ネタです。

パスワードやユーザー名などに @#$%^&*() といった記号が入っている場合、Prismaが意図通りパースできず、データベースに接続できないようなエラーが続きます。そうした場合は、記号をパーセントエンコーディングすればOKです。

例えばこんな DATABASE_URL だった場合を考えてみます。

mysql://foo$bar:p@$$word@special.mysql.server.example.com/db

このように変換します。

mysql://foo%24bar:p%40%24%24word@special.mysql.server.example.com/db

参考URL

https://www.prisma.io/docs/reference/database-reference/connection-urls#special-characters

に記載がありました。

Discussion