attempt to write a readonly database

使用Adminer,一个PHP文件的数据库管理工具管理SQLite时,简单地删除一张表,报错:attempt to write a readonly database。

原因在于Adminer是在Apache中运行,在mac中使用的用户身份是_www用户,就没有写的权限了。所以要修改目录权限让apache可写


$ sudo chown -R _www:staff db
$ sudo chmod -R 775 db

权限如果改成755的话,个人用户就又没有写权限了。当然更好的方式是保留原有权限,只给_www用户新增所需权限:sudo chmod -R +a ‘_www allow read,write,delete,add_file,add_subdirectory,file_inherit,directory_inherit’ #dir#,就打起来复杂点。