Tengo una base de datos SQLite que estoy usando para un sitio web. El problema es que cuando lo intento INSERT INTO
, obtengo unPDOException
SQLSTATE[HY000]: General error: 8 attempt to write a readonly database
SSH'd en el servidor y revisé los permisos, y la base de datos tiene los permisos
-rw-rw-r--
No estoy tan familiarizado con los permisos * nix, pero estoy bastante seguro de que esto significa
- No es un directorio
- El propietario tiene permisos de lectura / escritura (ese soy yo, según
ls -l
) - El grupo tiene permisos de lectura / escritura
- Todos los demás solo tienen permisos de lectura
También busqué en todas partes que conocía el uso del sqlite3
programa, y no encontré nada relevante.
Como no sabía con qué permisos PDO está tratando de abrir la base de datos, lo hice
chmod o+w supplies.db
Ahora tengo otro PDOException
:
SQLSTATE[HY000]: General error: 14 unable to open database file
Pero SOLO ocurre cuando intento ejecutar una INSERT
consulta después de que la base de datos está abierta.
¿Alguna idea de lo que está pasando?
sudo chgrp www-data test.db
con agregar permisos funcionó para mí