SQLSTATE[HY000]: General error: 14无法打开数据库文件。

3

我在我的DO服务器上一直收到这个错误。 我已经在sqlite上执行了chmod 755。 有人能想出这个问题是什么吗?

SQLSTATE[HY000]: General error: 14 unable to open database file

关于我的服务器,我最近升级到了PHP7,并且我的phpini文件如下所示。

;extension=php_bz2.dll
 867 ;extension=php_curl.dll
 868 ;extension=php_fileinfo.dll
 869 ;extension=php_gd2.dll
 870 ;extension=php_gettext.dll
 871 ;extension=php_gmp.dll
 872 ;extension=php_intl.dll
 873 ;extension=php_imap.dll
 874 ;extension=php_interbase.dll
 875 ;extension=php_ldap.dll
 876 ;extension=php_mbstring.dll
 877 ;extension=php_exif.dll      ; Must be after mbstring as it depends on it
 878 ;extension=php_mysqli.dll
 879 ;extension=php_oci8_12c.dll  ; Use with Oracle Database 12c Instant Client
 880 ;extension=php_openssl.dll
 881 ;extension=php_pdo_firebird.dll
 882 ;extension=php_pdo_mysql.dll
 883 ;extension=php_pdo_oci.dll
 884 ;extension=php_pdo_odbc.dll
 885 ;extension=php_pdo_pgsql.dll
 886 extension=php_pdo_sqlite.dll
 887 ;extension=php_pgsql.dll
 888 ;extension=php_shmop.dll

你是否已经给予数据库文件本身写入权限(我是指除了sqlite文件夹之外的部分)? - Peyman.H
是的,.sqlite 文件上有 777 权限。 - manshu
你是在使用共享主机还是在本地主机上运行代码? - Peyman.H
它在我的DO服务器上@Peyman.H。 - manshu
1个回答

0

除了文件外,文件夹也必须拥有 777 的权限。例如,如果你的 SQLite 文件位于 database/database.sqlite,那么你需要对文件夹(非递归)和文件进行 chmod 权限设置。

chmod 777 database && chmod 777 database/database.sqlite

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接