$ npx prisma migrate dev
Environment variables loaded from .env
Prisma schema loaded from prisma/schema.prisma
Datasource "db": PostgreSQL database "디비명", schema "public" at "WSL아이피:5432"
Error: P1001: Can't reach database server at `WSL아이피`:`5432`
Please make sure your database server is running at `WSL아이피`:`5432`.
계속 연결이 안 돼서 마이그레이션 못 함.. 연결이 안 됨..
DB 잘 떠 있고 pgadmin4로는 잘 연결되는데..?
wsl에서만 연결이 안 됨...
pg_hba.conf 파일에 wsl ip도 추가했는데..
→ 결론, wsl에서 postgresql 따로 설치해서 해보기로...
sudo apt install postgresql postgresql-contrib
sudo service postgresql start
sudo -u postgres createdb 디비명
sudo -u postgres psql -c "ALTER USER postgres PASSWORD '비번';"
이후에 다시 npx prisma migration dev 시도했더니 잘 되었음..
[참고]
WSL PostgreSQL 설치해도 Windows PostgreSQL은 그대로 남아있습니다.
완전 별개의 환경이다.
- Windows PostgreSQL: Windows에서 실행, Windows 앱들이 사용
- WSL PostgreSQL: WSL에서 실행, WSL 앱들이 사용
각각 독립적이다.
- 다른 데이터 폴더, 설정 파일, 데이터베이스들
- 같은 5432 포트 사용하지만 다른 네트워크 환경이므로 독립적
pgAdmin4는 Windows PostgreSQL에만 연결되고,
WSL PostgreSQL에 연결하려면 별도 설정 필요하다.
실무에서는 아래와 같이 병행 사용하는 경우가 많다.
- 개발용: WSL PostgreSQL
- GUI 관리용: Windows PostgreSQL + pgAdmin4