
Prisma 마이그레이션 중 EPERM 에러가 뜬다면? 5분만에 해결하는 방법
갑자기 마주친 에러 상황
프리즈마(Prisma)로 데이터베이스 스키마를 수정하고 있었는데요.
평소처럼 prisma migrate dev 명령어를 실행했더니 갑자기 이런 에러 메시지가 떴습니다.
EPERM: operation not permitted, ~~~~~~~~~~(디렉토리 경로)
처음 보는 에러라 당황했지만, 다행히 간단한 방법으로 해결할 수 있었거든요.
오늘은 제가 이 문제를 해결한 방법을 공유해보려고 합니다.
실제로 효과를 본 해결 방법
크게 두 가지 방법을 시도했는데요.
사실 두 방법을 동시에 적용해서 정확히 어떤 것이 직접적인 해결책이었는지는 모르겠지만, 어쨌든 문제는 깔끔하게 해결됐습니다.
방법 1. node_modules 폴더 재설치하기
가장 먼저 시도한 방법은 'node_modules' 폴더를 완전히 삭제하고 다시 설치하는 거였는데요.
의외로 많은 문제가 이 방법으로 해결되더라고요.
먼저 프로젝트 폴더에서 'node_modules' 폴더를 삭제합니다.
그 다음 터미널에서 아래 명령어를 실행해주면 됩니다.
npm install
패키지들이 새로 설치되면서 꼬였던 의존성 문제가 해결되는 경우가 많거든요.
실제로 이 방법만으로도 문제가 해결될 가능성이 높습니다.
방법 2. Prisma 캐시 문제 해결하기
두 번째 방법은 프리즈마의 캐시를 강제로 클리어하는 건데요.
아래 명령어를 실행하면 프리즈마가 생성한 클라이언트 코드를 강제로 재생성합니다.
npx prisma generate --force
이 명령어는 기존에 생성된 프리즈마 클라이언트를 무시하고 완전히 새로 만들어주거든요.
캐시 관련 문제가 있었다면 이 방법으로 깔끔하게 정리됩니다.
추가로 시도해볼 만한 방법들
위 두 가지 방법으로도 해결이 안 된다면, 몇 가지 더 시도해볼 수 있는 방법들이 있는데요.
VS Code나 터미널을 관리자 권한으로 실행하기
'EPERM' 에러는 기본적으로 권한 문제를 의미하거든요.
윈도우를 사용하신다면 VS Code나 터미널을 '관리자 권한으로 실행'해보시는 것도 좋은 방법입니다.
.prisma 폴더 삭제하기
프로젝트 루트에 있는 '.prisma' 폴더를 삭제하고 다시 생성하는 것도 효과적인데요.
이 폴더에는 프리즈마가 생성한 임시 파일들이 저장되어 있습니다.
rm -rf .prisma
npx prisma generate
package-lock.json 파일도 함께 삭제하기
'node_modules'를 삭제할 때 'package-lock.json' 파일도 함께 삭제하면 더 확실하게 의존성을 초기화할 수 있는데요.
다만 이 경우 패키지 버전이 변경될 수 있으니 주의가 필요합니다.
마무리하며
개발하다 보면 이런 예상치 못한 에러들을 자주 만나게 되는데요.
다음에 또 같은 문제를 만났을 때 빠르게 해결할 수 있도록 정리해봤습니다.
혹시 비슷한 문제로 고민하고 계신 분들께 도움이 되었으면 좋겠네요.
다른 해결 방법을 알고 계시거나 더 좋은 팁이 있다면 댓글로 공유해주시면 감사하겠습니다.
'Javascript' 카테고리의 다른 글
| Vite에서 import.meta.env 타입 에러 해결하기! 5분이면 끝나는 완벽 가이드 (0) | 2025.09.22 |
|---|---|
| React useEffect와 의존성 배열 완벽 정리! 무한 루프 피하는 꿀팁까지 (0) | 2025.09.22 |
| 자바스크립트 코드 이제 TPO에 맞게 쓰세요, 클린 코드를 위한 36가지 팁 (0) | 2025.09.07 |
| Object.entries에 as 쓰시는 분, 잠시만요 (1) | 2025.08.31 |
| ES2016 이후 모던 JavaScript 완벽 가이드 한번에 끝내기 (3) | 2025.08.31 |