문제상황
Django로 새로운 app을 생성하고 모델을 추가한 다음
makemigrations 성공 후 migrate를 할 때 발생한 에러.
해결법
참고 사이트 : Stackoverflow
linux와 macOS의 경우
$ fuser <locked된 파일명>
ex: $ fuser development.db
- 참고 사이트에 나온 예제의 경우 development.db가 locked된 파일명
- 이 명령어는 어떤 프로세스가 파일을 lock하고 있는지 보여줌.
-
위 명령어를 입력하면 아래와 같은 결과가 나옴.
<locked된 파일명>: <프로세스 숫자> ex: development.db: 5430
-
$ kill -9 <해당 프로세스 숫자>
ex: $ kill -9 5430
- 위 명령어를 통해 해당 프로세스를 kill 하면 database가 unlocked 됨.
원인
참고 사이트: SQLite
-
동일한 데이터베이스 연결에서 동시에 데이터베이스와 호환되지 않는
두 가지 작업을 수행하려고 할 때 발생.
-
ex) SELECT 문이 중간에 있고 SELECT에 의해 읽혀지는 테이블 중 하나를
DROP하려고하면 SQLITE_LOCKED 오류가 발생
-
Comments