created: 2021-04-17T12:38:14.000Z
prisma-client と MySQL を unix socket で接続する
ドキュメントには「ディレクトリを指定する」という書き方になっているが、もちろん実際はファイルのフルパスを入れないとつながらない。
socket Points to a directory that contains a socket to be used for the connection
たとえばこんな設定で接続できる。
DATABASE_URL=mysql://root:@localhost:3306/myappdb?socket=/tmp/mysql.sock
ホスト名は 127.0.0.1 ではなく localhost である必要がある。 MySQL は 127.0.0.1 と指定されるとTCP接続を取ろうとするため。
その他
下記のissueで当初間違った情報が案内されてちょっと困った(最後まで読まないとダメ)。MySQL だと socket
というパラメータ名だが、Postgres だと host
なんだそうだ。
コード的にはここ (括弧はあってもなくてもよい)