Ho un database SQLite che sto usando per un sito web. Il problema è che quando ci provo INSERT INTO
, ottengo unPDOException
SQLSTATE[HY000]: General error: 8 attempt to write a readonly database
Sono entrato in SSH nel server e ho controllato i permessi, e il database ha i permessi
-rw-rw-r--
Non ho molta familiarità con i permessi * nix, ma sono abbastanza sicuro che questo significhi
- Non una directory
- Il proprietario ha autorizzazioni di lettura / scrittura (sono io, secondo
ls -l
) - Il gruppo dispone delle autorizzazioni di lettura / scrittura
- Tutti gli altri hanno solo i permessi di lettura
Ho anche cercato ovunque sapessi di utilizzare il sqlite3
programma e non ho trovato nulla di rilevante.
Poiché non sapevo con quali autorizzazioni PDO sta tentando di aprire il database, l'ho fatto
chmod o+w supplies.db
Ora ne ottengo un altro PDOException
:
SQLSTATE[HY000]: General error: 14 unable to open database file
Ma si verifica SOLO quando provo a eseguire una INSERT
query dopo che il database è aperto.
Qualche idea su cosa sta succedendo?
sudo chgrp www-data test.db
con l'aggiunta delle autorizzazioni ha funzionato per me