Mysql的通过PHP提供了一个“无法创建/写入文件”的错误
问题描述:
完整的错误是:Mysql的通过PHP提供了一个“无法创建/写入文件”的错误
消息:mysqli的语句执行 错误:无法创建/写入文件 “/ VAR /www/zendApp/backup/mysql/1268733580_name.sql” (ERRCODE:13)
我已经试过几件事情与在/ var/WWW/ZendApp /备份/ mysql目录
$chmod 777 mysql
$chmod 1777 mysql
$chown root:root mysql
$chown mysql:mysql mysql
但没有什么帮助。我在这里做错了什么?我必须告诉MySQL某处我可以写入该目录吗?
答
在Dominik @ Super User的帮助下,我发现Ubuntu运行apparmor,我的服务器在Ubuntu上运行。我从维基百科报价:
的AppArmor允许系统 管理员与每个 程序关联安全配置文件 限制了 程序的功能
果然,这些方案之间进行mysqld的。所以不是用户或他的特权是问题,而是由apparmor对流程施加的限制。然后我找到了解决办法here
sudo touch /etc/apparmod.d/disable/usr.sbin.mysqld
sudo /etc/init.d/apparmor reload
这使mysqld的一个自由的过程,对我来说,在该服务器上,是没有问题的。所以,经过几天的搜索,问题解决了!
您正在创建新文件还是写入现有文件? – 2010-03-16 10:39:14
@Dmitry,对不起,直到现在才看到您的评论。我正在创建一个新的。但我刚刚发现了解决方案,并将在此处作出答复。 – Peter 2010-03-19 16:27:03