У мене є база даних SQLite, яку я використовую для веб-сайту. Проблема полягає в тому, що коли я спробую INSERT INTO
це, я отримуюPDOException
SQLSTATE[HY000]: General error: 8 attempt to write a readonly database
Я SSH зайшов у сервер і перевірив дозволи, а база даних має дозволи
-rw-rw-r--
Я не такий знайомий з дозволами * nix, але я впевнений, що це означає
- Не каталог
- Власник дозволу на читання / запис (це я, згідно
ls -l
) - Група має дозволи на читання / запис
- Усі інші мають лише дозволи на читання
Я також шукав всюди, де я знав, як користуватися sqlite3
програмою, і не знайшов нічого актуального.
Оскільки я не знав, з якими дозволами PDO намагається відкрити базу даних, я це зробив
chmod o+w supplies.db
Тепер я отримую ще PDOException
:
SQLSTATE[HY000]: General error: 14 unable to open database file
Але це ТІЛЬКИ виникає, коли я намагаюся виконати INSERT
запит після відкриття бази даних.
Будь-які ідеї щодо того, що відбувається?
sudo chgrp www-data test.db
з додаванням дозволів працював на мене