我正在尝试将CSV文件写入/var/www/VistaMind_CMStmp
,我收到错误消息:SQLSTATE[HY000]: General error: 1 Can't create/write to file '/VistaMind_CMS/tmp/app_users.csv' (Errcode: 2)
我尝试过chown mysql:mysql
/var/www/VistaMind_CMS/tmp
,但这不起作用。我不想在my.cnf中修改我的TMPDIR var,当前设置为/ var / www,但我希望MySQL将数据库表转储到/ var / www / VistaMind_CMS / tmp。
请帮忙!
我的代码是:
$file_path = $this->view->baseUrl()."/../tmp/app_users.csv";
$sql = "SELECT * FROM users INTO OUTFILE '".$file_path."' ".
"FIELDS TERMINATED BY ','
ENCLOSED BY '\"'
LINES TERMINATED BY '\n'";
$db = Zend_Registry::get('db');
$stmt = $db->query($sql, array());
echo "Done!!";
答案 0 :(得分:3)
您需要chown mysql:mysql /var/www/VistaMind_CMS/tmp
。
答案 1 :(得分:0)
在我的情况下,chown没有解决问题。我按照以下帖子中的第二步,最终解决了我的问题
http://www.mydailyhacks.org/2014/11/08/how-can-i-backup-a-mysql-database-or-export-it-to-a-file/
(我不得不改变mysql使用的tmpdir)