【问题标题】:Cant get stat of 'var/lib/mysql/ (Errcode:2)无法获取 'var/lib/mysql/ 的统计信息 (Errcode:2)
【发布时间】:2020-11-26 16:22:46
【问题描述】:

这个带有路径的代码在本地主机中对我来说很好

$sql = "LOAD DATA INFILE 'C://xampp/htdocs/xampp/www/tool/".@mysql_escape_string($this->file_name).
         "' INTO TABLE `".$this->table_name.
         "` FIELDS TERMINATED BY '".@mysql_escape_string($this->field_separate_char).
         "' OPTIONALLY ENCLOSED BY '".@mysql_escape_string($this->field_enclose_char).
         "' ESCAPED BY '".@mysql_escape_string($this->field_escape_char).
         "' LINES TERMINATED BY '" .@mysql_escape_string("\r\n") . "' ".
         ($this->use_csv_header ? " IGNORE 1 LINES " : "")
         ."(`".implode("`,`", $this->arr_csv_columns)."`)";

        //echo $sql;
          mysqli_query(DB::cxn(),$sql)  or die("Import Error: " . mysqli_error(DB::cxn()));

  // Delete the file now it's been imported
      unlink("C:/xampp/htdocs/xampp/www/tool/". $this->file_name);

现在当我在 centos 服务器上运行时,我给出了类似的路径

$sql = "LOAD DATA INFILE 'var/www/html/tool/".@mysql_escape_string($this->file_name).       
  unlink("var/www/html/tool/". $this->file_name);

Cant get stat of 'var/lib/mysql/var/www/html/tool/file.csv (Errcode:2)

现在当我使用LOAD DATA LOCAL INFILE 'var/www/html/tool 时,它正在给予

cant find file 'var/www/html/file.scv

我的网络根文件夹在/var/www/html/tool 中,我通过xxx.xxx.xx.xx/tool 访问它

每次将 csv 文件上传到服务器位置 /var/www/html/toolOWNER as apache-Apache 具有 Read and Write

Group as apache having only Read Only permisssion

我尝试过 chmod 777 -R /var/www/html/tool 但文件仍在apache as groupapache-Apache as Owner 中上传

是的,我看过与此类似的另一篇帖子并使用了LOAD DATA LOCAL INFILE 请建议

【问题讨论】:

    标签: php mysql apache mysql-loadfile


    【解决方案1】:

    只需在查询中的 INFILE 之前添加 LOCAL

    $sql = LOAD DATA LOCAL INFILE 'C://xampp/htdocs/xampp/www/tool/"

    【讨论】:

      【解决方案2】:

      您使用var/www/html/tool/ 作为路径而不是/var/www/html/tool/,因此该路径相对于/var/lib/mysql 中的mysql 目录。只需在前面添加另一个斜线即可。

      【讨论】:

      • 那个工作的人! csv 上传到服务器位置,但 csv 文件中的第一个值未按应显示在浏览器中。我认为这是一个权限问题,因为 apache 组只有只读权限?无论如何,谢谢干杯!!
      • 请使用代码对 SO 提出另一个问题,因为这是两个不同的问题。
      猜你喜欢
      • 2011-03-29
      • 1970-01-01
      • 2018-05-02
      • 2014-02-11
      • 1970-01-01
      • 1970-01-01
      • 2017-12-23
      • 2023-04-09
      • 1970-01-01
      相关资源
      最近更新 更多