我有一个用于网站的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
添加权限为我工作