점프투플라스크 배포 Sqlite 에러

안녕하세요, 점프 투 플라스크를 보며 배포를 준비하고 있습니다.
현재 GCP를 사용 중인데 Cloud SQL PostgreSQL 을 연결하여 서버를 운영하기 전에 sqlite로 테스트를 해보려고 했습니다.
서버 환경에서 가르쳐주신대로 Gunicorn + Nginx 조합 그대로 따라하였습니다.
그런데, DB를 읽는 작업은 잘 되는 것 같은데, DB에 새로운 정보를 작성할 때 Internal Server Errorr가 발생하여 /var/log/syslog에서 확인해 보았더니 다음과 같은 오류가 발생하였습니다.

 gunicorn[88489]: sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) attempt to write a readonly database

읽을 수만 있는 database에 대해 write하려고 한다는 의미인 것 같아서 구글링해서 chmod를 바꾸라고 하는 것들을 다 시도해보았는데, 잘 되지 않습니다.

  1. 이 문제를 어떻게 해결할 수 있을까요?
  2. PostgreSQL을 아직 테스트 안 해보았지만 PostgreSQL에 연결하여 사용하면 이와 같은 문제가 발생하지 않을까요?

감사합니다.

pgb1227 52

2021년 6월 8일 2:08 오전

목록으로
1개의 답변이 있습니다. 1 / 1 Page

sqlite3는 파일을 데이터베이스로 사용합니다. 저장한 데이터베이스 파일에 쓰기 권한이 없어서 발생하는 오류로 보이네요.

PostgreSQL을 사용하면 파일이 아닌 데이터베이스이기 때문에 파일과 관련한 오류가 발생하지 않습니다.

박응용

2021년 6월 8일 10:01 오전