attempt to write a readonly database in django app hosting on apache2 with db.sqlite3 database in ubuntu

Posted July 5, 2020 8.2k views

I was hosting django app on apache server with db.sqlite3 database,
when i complete my hosting according your website guidance.
and when i open mysite then i got this error..

OperationalError at /
attempt to write a readonly database

what should i do ?
please tell me.

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
2 answers

Hi there @akshaykoshti401,

What are the permissions of your SQLite file? To check that run ls -lah inside the directory where you store your database file.

You need to make sure that the file is owned by the apache user so that it could write to it. To adjust that run:

  • sudo chown www-data: /path/to/your/sqlite/file

Change the /path/to/your/sqlite/file part with the actual path to yuor SQLite file.

Hope that this helps.

You can change the owner of your database file and it’s folder to django:

chown django:django /home/django/mysite
chown django:django /home/django/mysite/my_db.sqlite3

This work for DigitalOcean’s 1-Click Django Droplet