【问题标题】:General error: 1 Can't create/write to file errcode:2一般错误:1 无法创建/写入文件错误代码:2
【发布时间】:2013-07-05 10:18:44
【问题描述】:

我正在尝试将 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!!";

【问题讨论】:

  • 请分享您的代码...
  • 刚刚编辑了我的问题以包含 php 代码。
  • @Sonu Jha - DevZer0 在下面回答了你的问题吗?如果有,请将其标记为答案。您对他的回答的评论不清楚。

标签: php mysql linux file-permissions database-permissions


【解决方案1】:

你需要做chown mysql:mysql /var/www/VistaMind_CMS/tmp

【讨论】:

  • @SonuJha 接受它作为正确答案,以便其他人可以理解它的工作原理。
【解决方案2】:

在我的情况下,chown 没有解决问题。我按照下面帖子中的第二步,终于解决了我的问题

http://www.mydailyhacks.org/2014/11/08/how-can-i-backup-a-mysql-database-or-export-it-to-a-file/

(我不得不更改mysql使用的tmpdir)

【讨论】:

    猜你喜欢
    • 2013-11-01
    • 2012-11-02
    • 2014-06-18
    • 1970-01-01
    • 2011-12-28
    • 2012-09-17
    • 2016-04-18
    • 2010-11-02
    • 2013-07-10
    相关资源
    最近更新 更多